Gå til innhold

Anbefalte innlegg

Hei

 

Håper dette er riktig sted for mitt problem og at noen kan hjelpe meg.

 

Er ny i dette gamet.

 

Jeg skal lage tabeller (rader) som har forskjellig bredde på cellene, antall celler men total bredden er lik.

 

Legger med 2 eksempler på tabeller (rader) som blir laget i fall det blir litt lettere.

 

Den kode jeg skla bruke er litt lenger så derfor har jeg laget en eksempel kode.

 


        TableRow rowhead = new TableRow();

          TableCell c1 = new TableCell();
          TableCell c2 = new TableCell();
          TableCell c3 = new TableCell();

          c1.Width = 100;
          c1.BorderWidth = 1;
          c1.BorderColor = Color.FromName("Black");
          c2.Width = 200;
          c2.BorderWidth = 1;
          c2.BorderColor = Color.FromName("Black");
          c3.Width = 200;
          c3.BorderWidth = 1;
          c3.BorderColor = Color.FromName("Black");           


          tableHead.CellSpacing = 0;
          tableHead.BorderWidth = 1;
          tableHead.BorderColor = Color.FromName("Black");

          tableHead.Rows.Add(rowhead);

          rowhead.Cells.Add(c1);
          rowhead.Cells.Add(c2);
          rowhead.Cells.Add(c3);

 

 


  int i = 1;

      while (i <= 7)
      {
          TableCell celle = new TableCell();

          if (i == 1)
          {
              celle.Width = 50;
          }
          if (i == 2)
          {
              celle.Width = 100;
          }
          if (i == 3)
          {
              celle.Width = 100;
          }
          if (i == 4)
          {
              celle.Width = 100;
          }
          if (i == 5)
          {
              celle.Width = 50;
          }
          if (i == 6)
          {
              celle.Width = 50;
          }
          if (i == 7)
          {
              celle.Width = 50;
          }
          celle.BackColor = Color.FromName("White");
          celle.Text = "B";
          celle.BorderWidth = 1;
          celle.BorderColor = Color.FromName("Black");
          row1.Cells.Add(celle);

          i++;
      }

 

 

I IE så blir ikke totalt lengde lik på skjermen.

 

Bak grunner til tabellen er at jeg skal tagne opp en slags tidsskala. Bredden på cella er et tidsintervall. Kan minne litt om prosjekt eller resurss styring (opptatt og ledig tidsrom).

 

Kanskje det fins andre metoder å løse problemmet på. Håper jeg har forklart meg godt nok.

 

På forhånd takk.

Lenke til kommentar
Videoannonse
Annonse

I en tabell vil alle celler være like store i en kolonne. Det er slik tabeller er. Noe man derimot kan gjøre for å skape "ujevne" celler slik du ønsker er å bruke span (cellspan?). Dvs: Istedet for å skape 3 kolonner slik du illustrerer, så skap 30 kolonner.

 

Da kan du si at celle 1 har et cellspan på 10. Da slår den samme de 10 neste cellene til 1 celle. Celle 2 kan f.eks ha et cellspan på 15 og siste celle et cellspan på 5. Da dekker disse 3 cellene alle de 30 kolonnene tabellen din består av.

 

Neste rad kan du ha andre cellspans. Dermed blir cellene visuelt forskjellige slik du ønsker.

Lenke til kommentar

Hei Manfred

 

Det har litt med uvitenhet å gjøre. Har oppdaget din metode i etterkant.

 

I tillegg får jeg fargen fra en variabel og da har jeg fått det til med Color.FromName(variabel).

 

Jeg har forandret på min kode det fargen er forhåndsvalgt og ikke kommer fra en variabel.

 

Vet du hvordan man begynner hvis man vil lage en farge liste (farge kart) der brukeren velger farge slik at jeg kan lagre navnet i en database? Hadde vært fint om man så fargen også.

Lenke til kommentar

Det eneste jeg kom frem til var dette:

Klikk for å se/fjerne innholdet nedenfor

foreach (String name in Enum.GetNames(typeof(KnownColor)))
       {
           output.Text += "<br><div style='background-color: " + name + "'>" + name + "</div>";
       }

 

Her får du navnene til alle kjente farger.

Endret av Manfred
Lenke til kommentar
Vet du hvordan man begynner hvis man vil lage en farge liste (farge kart) der brukeren velger farge slik at jeg kan lagre navnet i en database? Hadde vært fint om man så fargen også.

7436363[/snapback]

 

http://www.xult.org/stuff/colorpicker.aspx

 

eller:

 

http://www.google.no/search?q=color+picker...lient=firefox-a

 

 

Man lagrer vanligvis ikke navnet på fargen i databasen. Man lagrer heller RGB verdiene. Disse får du ut som en int ved å bruke MinFarge.ToArgb();

Tilbake til farge igjen: Color MinFarge = Color.FromArgb(FargeKode);

Lenke til kommentar
Finnes det ikke en innebygget slik en som er tilgjengelig på et vis? Den brukes i properties vinduet når man ønsker å velge farge.

7443698[/snapback]

 

Jo, men jeg forstod det som om prosjektet ditt var ASP.Net? Den innebygde i .Net rammeverket fungerer kun for Windows Forms....

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...