Bonjour,
J'ai un problème lors de la tentative d'accés à une donnée d'un item d'une datalist. J'ai créé une fonction "Item_Created"
qui tente de cocher la checkbox :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 void Item_Created(Object sender, DataListItemEventArgs e) { ((CheckBox)e.Item.FindControl("ck")).Checked=true; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <asp:datalist id="MyList" OnItemCreated="Item_Created" runat="server"> <HeaderTemplate>...</HeaderTemplate> <ItemTemplate> <tr> <td><asp:CheckBox id="ck" runat="server"/> </td></tr> ... </ItemTemplate> <FooterTemplate>... </FooterTemplate> </asp:datalist>
Erreur générée : System.NullReferenceException: Object reference not set to an instance of an object.
Sur : ((CheckBox)e.Item.FindControl "ck")).Checked=true;
La requete fonctionne si je vide le "Item_Created" et me génère une 20taine de lignes.
Même erreur générée lorsque je place uniquement ceci dans le code de la fonction "Item_Created" :
Ca fonctionne correctement de la même manière sur une autre page, je comprends absolument pas pourquoi il ne parvient pas à lire les données de l'Item qui appelle la fonction...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 int IDC = (int) ((DataRowView)e.Item.DataItem).Row.ItemArray[0];
Si qqu'un à une idée du pb...
(PS : Le but n'est pas de cocher tout bien sûr , mais d'effectuer un test dans la fonction pour appliquer checked false ou true... J'ai allégé le code pour etre plus clair)
Partager