Bonjour,
(ASP.NET)
J'utilise un datagrid pour afficher un dataset
J'ai ajouté un bouton imagebutton dans une colonne.
Et quand je click dessus je récupère bien l'index de ligne sélectionnée.
Mais comment fait-on pour lire le texte dans une cellule d'un datagrid?
Je ne trouve pas ... bizarre
Ah ouais, en effet, si tu n'as pas de texte dans ta cellule mais que ton texte est contenu dans un label, dans ce cas la tu ne peux pas utiliser Me.DataGrid1.Items(1).Cells(1).Text !
Il faut que tu fasses ceci (je pense) :
tu declare un tableau de string :
dim tab() as string
ensuite
dans la procédure :
Private Sub tondatagrid_ItemDataBound( .....)
if e.Item.ItemIndex <> 0 then
Dim lbl
As Label = DirectCast(e.Item.FindControl("le nom de ton label dans ta ligne"), Label)
tab(e.item.itemindex) = lbl.Text
End if
End sub
Ensuite pour récuperer le texte du label de la 5eme ligne :
dim toto as string = tab(5);
(J'ai pas testé le code mais je pense qu'il faut que tu cherches dans ce sens ).
Merci,
mais j'avais déjà essayé cette formule mais je récupère : ""
Par contre, j'ai une pagination. Est-ce qu'il faut rajouter une information pour définir sur quelle page je me trouve?
Non ce n'est pas nécessaire. Par contre, la propriété Text d'une cellule de Datagrid correspond à tous les éléments présents dans ta cellule . Par exemple, si tu as une cellule avec tu texte, et un bouton à l'intérieur, et que tu fais tondatagrid.Items(num de ta ligne).Cells(num de ta colonne).Text = "", alors ça t'efface non pas seulement le texte présent dans ta cellule, mais également ton bouton !! Je ne sais pas si cela peut t'aider pour ton problème !