[c#, webforms]Checkbox waardes uitlezen

Pagina: 1
Acties:

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 01:20
Goedemorgen,

Heb nu al een poosje een lastig (voor mij) probleem.

Ik heb een datalist.
C#:
1
2
3
4
5
6
7
<asp:datalist id="afwerking" runat="server" RepeatLayout="Table">
      <ItemTemplate>
           <asp:CheckBox 
                 id="afwerk_check" runat="server"  
            </asp:CheckBox>
       </ItemTemplate>
</asp:datalist>

Deze wordt gevult middels een DataReader. Nu lukt het me wel om met
C#:
1
2
3
4
5
6
7
8
foreach (DataListItem anItem in afwerking.Items)
{
    checkselect = ((CheckBox)anItem.FindControl("afwerk_check")).Checked;
       if (checkselect)
           { 
           // lees met anItem.ItemIndex het e.e.a. uit
           }
}

de itemIndexes uit te lezen, alleen die zal natuurlijk altijd met 0 beginnen. Het is zo dat deze opties uit de database komen, en dat zou theoretisch van Id kunnen veranderen.

Hoe kan ik er nu achter komen dat als
code:
1
name="afwerking:_ctl0:afwerk_check"

gechecked is, ik in de database bijvoorbeeld AfwerkId2 moet hebben. Ik kan namelijk geen opties vinden bij een checkbox om deze te nummeren of iets dergelijks.

Ik snap er geen snars van op dit moment.

[ Voor 9% gewijzigd door TeeDee op 07-09-2004 10:13 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 19:24

gorgi_19

Kruimeltjes zijn weer op :9

Heeft een datalist niet een Datakeyfield en DataKeys property?

Wel dus :)

Stel je hebt een Person, deze heeft een PersonID. Je zet het DataKeyfield op PersonID

Vervolgens wordt er intern een soortement van hashtable bij gehouden (datakeys ;)), waarin de ItemIndex correspondeert met de datakeys :)

[ Voor 67% gewijzigd door gorgi_19 op 07-09-2004 10:16 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 01:20
Hmm, een goeie. Zal eens even rondlezen over DataKeyfield en DataKeys.

Krijg namelijk meldingen dat het read only is.

Heart..pumps blood.Has nothing to do with emotion! Bored


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 19:24

gorgi_19

Kruimeltjes zijn weer op :9

TeeDee schreef op 07 september 2004 @ 10:19:
Hmm, een goeie. Zal eens even rondlezen over DataKeyfield en DataKeys.

Krijg namelijk meldingen dat het read only is.
DataKeys is ook readonly :) Maar dat maakt niet uit :) Die wordt automatisch gevuld bij het binden, op basis van het DataKeyField. En die is niet readonly; die definieer je bij het initialiseren van de control :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 01:20
Zal ik het setten van het DataKeyfield ook al in de html source moeten kunnen zien?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 19:24

gorgi_19

Kruimeltjes zijn weer op :9

TeeDee schreef op 07 september 2004 @ 10:27:
Zal ik het setten van het DataKeyfield ook al in de html source moeten kunnen zien?
Nee :) Tenzij je de viewstate gaat decoden, gok ik :)

Maar het zou iets moeten zijn als:
HTML:
1
<asp:datalist id="afwerking" runat="server" RepeatLayout="Table" DataKeyField="MyOwnID">

Ow ja, ik ben VB.Net gewend, dus de case gaat in m'n code nogal eens fout :P

[ Voor 33% gewijzigd door gorgi_19 op 07-09-2004 10:28 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 01:20

Hmm, DataKeyField gooit VisualStudio een error als ik het op die manier doe. Als ik DataKeyField in de codebehind voor .DataSource set, dan krijg ik in ieder geval geen error.

Ga nog wel even rond puzzelen.

Volgende keer even op het goeie control itempje een DataKeyField setten.
edit:

Zie nu ook dat het volgens mij makkelijker kan.
Een checkbox list. Hoef je het niet in een DataList te stoppen. Moet het e.e.a. wel aan passen (ipv een reader een datatable, want ik wil nog wat andere dingetjes doen/proberen)
Thanks gorgi_19.

[ Voor 93% gewijzigd door TeeDee op 07-09-2004 10:47 ]

Heart..pumps blood.Has nothing to do with emotion! Bored

Pagina: 1