Avatar billede repsak Nybegynder
23. januar 2006 - 14:02 Der er 3 kommentarer

Rette i ItemTemplate runtime

Hej, jeg har en DataList (ASP.NET 1.1) som viser 7 felter hentet fra databasen.
Hvis værdi på felt 1 er 'true' så skal der kun vises 5 felter i datalistens itemtemplate. Templaten består både af statisk tekst og felter bundet værdierne fra databasen. Hvordan går jeg ind og manipulerer templaten runtime? ... eller hvordan ændrer jeg mit design så ovenstående er muligt.
Avatar billede snepnet Nybegynder
24. januar 2006 - 20:19 #1
hej repsak

der er flere niveauer af den slags ... den simpleste er, hvis du abbonnerer på itemdatabound-eventet på din datalist, og gør det der skal gøre i forbindelse med databinding.

void _Default_ItemDataBound(object sender, DataListItemEventArgs e)
{
  if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
  {
    // får fat i de data der benyttes som datagrund... benytter du f.eks. en datatable:
    DataRowView view = e.Item.DataItem as DataRowView;
    // spørg på en værdi i datagrundlaget:
    if((bool)view[1] == true)
    {
      // her indsætter du så det der skal bruges
      TextBox tb = new TextBox();
      tb.Text = view[5].ToString();
      e.Item.Controls.Add(tb);
      ...
    }
  }
}

du kan jo lige prøve noget i den stil til at starte med.

mvh
Avatar billede repsak Nybegynder
25. januar 2006 - 18:54 #2
ja, det lyder jo fornuftigt nok... Så dropper jeg bare templaten. Det var svar nok :)
Avatar billede snepnet Nybegynder
25. januar 2006 - 20:31 #3
jamen så smider jeg da sådan et ;o)
mvh
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester