Comment récupérer l'index d'un élément cliqué dans un Datagrid ? ??
2 réponses
Thibault
Bonjour,
Comment faire pour connaitre et récupérer l'index d'un élément sélectionné
dans une colonne de datagrid ?
Explication : J'ai un webform avec un datagrid comprenant 6 colonnes. La
dernière colonne est un templateColumn avec 3 images sur lesquels j'aimerais
faire une action particulière lorsque l'utilisateur clique dessus.
J'ai essayé ça mais ça ne fonctionne pas :
Public Sub ActionClick_Click(ByVal sender As Object, ByVal e As
CommandEventArgs)
DgTickets.Items.Item("imgDetail").Attributes.Add(CType(e.CommandArgument,
String), CType(e.CommandName, String))
End Sub
Lorsque j'execute mon webform, il me retourne l'erreur suivante :
Le format de la chaîne d'entrée est incorrect.
Description : Une exception non gérée s'est produite au moment de
l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour
plus d'informations sur l'erreur et son origine dans le code.
Détails de l'exception: System.FormatException: Le format de la chaîne
d'entrée est incorrect.
Erreur source:
Ligne 108 :
Ligne 109 : Public Sub ActionClick_Click(ByVal sender As Object, ByVal e
As CommandEventArgs)
Ligne 110 :
DgTickets.Items.Item("imgDetail").Attributes.Add(CType(e.CommandArgument,
String), CType(e.CommandName, String))
Ligne 111 : End Sub
Ligne 112 :
Après avoir fait quelques recherches sur les items, ils s'avèrent qu'il faut
que j'indique l'index de mon item d'où ma question comment fait-on pour
récupérer l'index d'un item dans une colonne de datagrid ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
frédo
peut-être en codant le numéro de ligne du datagrid dans un champ hidden avec runat=server
intuitivement je ne crois pas qu'il y ai d'autres possibilités car rien n'interdit par exemple à un javascript de rajouter des lignes sur le datagrid. Le datagrid étant un composant serveur il n'a aucun moyen de voir le changement.
peut-être en codant le numéro de ligne du datagrid dans
un champ hidden avec runat=server
intuitivement je ne crois pas qu'il y ai d'autres
possibilités car rien n'interdit par exemple à un
javascript de rajouter des lignes sur le datagrid.
Le datagrid étant un composant serveur il n'a aucun moyen
de voir le changement.
peut-être en codant le numéro de ligne du datagrid dans un champ hidden avec runat=server
intuitivement je ne crois pas qu'il y ai d'autres possibilités car rien n'interdit par exemple à un javascript de rajouter des lignes sur le datagrid. Le datagrid étant un composant serveur il n'a aucun moyen de voir le changement.
Si j'ai bien compris ce que tu veux faire, ceci pourrait t'aider. si tu places l'attribut CommandName="" sut tes images, exemple un avec "open", un autre "select" et le dernier "delete"
ensuite dans l'événement ton datarid_ItemCommand tu pourras récupérer le command name
Select Case e.CommandName
case "open"
case "select"
case "delete"
end select
et tu peux accèder au colonnes de la lignes cliquer en utilisant e.item.cells(0).text pour la première colonne(index commence à zéro) qui pourrait contenir un id caché par exemple .
"Thibault" a écrit dans le message de news:
Bonjour,
Comment faire pour connaitre et récupérer l'index d'un élément sélectionné dans une colonne de datagrid ?
Explication : J'ai un webform avec un datagrid comprenant 6 colonnes. La dernière colonne est un templateColumn avec 3 images sur lesquels j'aimerais faire une action particulière lorsque l'utilisateur clique dessus.
J'ai essayé ça mais ça ne fonctionne pas :
Public Sub ActionClick_Click(ByVal sender As Object, ByVal e As CommandEventArgs)
DgTickets.Items.Item("imgDetail").Attributes.Add(CType(e.CommandArgument, String), CType(e.CommandName, String)) End Sub
Lorsque j'execute mon webform, il me retourne l'erreur suivante :
Le format de la chaîne d'entrée est incorrect. Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.
Détails de l'exception: System.FormatException: Le format de la chaîne d'entrée est incorrect.
Erreur source:
Ligne 108 : Ligne 109 : Public Sub ActionClick_Click(ByVal sender As Object, ByVal e As CommandEventArgs) Ligne 110 : DgTickets.Items.Item("imgDetail").Attributes.Add(CType(e.CommandArgument, String), CType(e.CommandName, String)) Ligne 111 : End Sub Ligne 112 :
Après avoir fait quelques recherches sur les items, ils s'avèrent qu'il faut que j'indique l'index de mon item d'où ma question comment fait-on pour récupérer l'index d'un item dans une colonne de datagrid ?
Merci pour le coup de main
Si j'ai bien compris ce que tu veux faire, ceci pourrait t'aider.
si tu places l'attribut CommandName="" sut tes images, exemple un avec
"open", un autre "select" et le dernier "delete"
ensuite dans l'événement
ton datarid_ItemCommand tu pourras récupérer le command name
Select Case e.CommandName
case "open"
case "select"
case "delete"
end select
et tu peux accèder au colonnes de la lignes cliquer en utilisant
e.item.cells(0).text pour la première colonne(index commence à zéro) qui
pourrait contenir un id caché par exemple .
"Thibault" <Thibault@discussions.microsoft.com> a écrit dans le message de
news: F4EF2294-198C-4019-AA90-1926ACBAC138@microsoft.com...
Bonjour,
Comment faire pour connaitre et récupérer l'index d'un élément sélectionné
dans une colonne de datagrid ?
Explication : J'ai un webform avec un datagrid comprenant 6 colonnes. La
dernière colonne est un templateColumn avec 3 images sur lesquels
j'aimerais
faire une action particulière lorsque l'utilisateur clique dessus.
J'ai essayé ça mais ça ne fonctionne pas :
Public Sub ActionClick_Click(ByVal sender As Object, ByVal e As
CommandEventArgs)
DgTickets.Items.Item("imgDetail").Attributes.Add(CType(e.CommandArgument,
String), CType(e.CommandName, String))
End Sub
Lorsque j'execute mon webform, il me retourne l'erreur suivante :
Le format de la chaîne d'entrée est incorrect.
Description : Une exception non gérée s'est produite au moment de
l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour
plus d'informations sur l'erreur et son origine dans le code.
Détails de l'exception: System.FormatException: Le format de la chaîne
d'entrée est incorrect.
Erreur source:
Ligne 108 :
Ligne 109 : Public Sub ActionClick_Click(ByVal sender As Object, ByVal
e
As CommandEventArgs)
Ligne 110 :
DgTickets.Items.Item("imgDetail").Attributes.Add(CType(e.CommandArgument,
String), CType(e.CommandName, String))
Ligne 111 : End Sub
Ligne 112 :
Après avoir fait quelques recherches sur les items, ils s'avèrent qu'il
faut
que j'indique l'index de mon item d'où ma question comment fait-on pour
récupérer l'index d'un item dans une colonne de datagrid ?
Si j'ai bien compris ce que tu veux faire, ceci pourrait t'aider. si tu places l'attribut CommandName="" sut tes images, exemple un avec "open", un autre "select" et le dernier "delete"
ensuite dans l'événement ton datarid_ItemCommand tu pourras récupérer le command name
Select Case e.CommandName
case "open"
case "select"
case "delete"
end select
et tu peux accèder au colonnes de la lignes cliquer en utilisant e.item.cells(0).text pour la première colonne(index commence à zéro) qui pourrait contenir un id caché par exemple .
"Thibault" a écrit dans le message de news:
Bonjour,
Comment faire pour connaitre et récupérer l'index d'un élément sélectionné dans une colonne de datagrid ?
Explication : J'ai un webform avec un datagrid comprenant 6 colonnes. La dernière colonne est un templateColumn avec 3 images sur lesquels j'aimerais faire une action particulière lorsque l'utilisateur clique dessus.
J'ai essayé ça mais ça ne fonctionne pas :
Public Sub ActionClick_Click(ByVal sender As Object, ByVal e As CommandEventArgs)
DgTickets.Items.Item("imgDetail").Attributes.Add(CType(e.CommandArgument, String), CType(e.CommandName, String)) End Sub
Lorsque j'execute mon webform, il me retourne l'erreur suivante :
Le format de la chaîne d'entrée est incorrect. Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.
Détails de l'exception: System.FormatException: Le format de la chaîne d'entrée est incorrect.
Erreur source:
Ligne 108 : Ligne 109 : Public Sub ActionClick_Click(ByVal sender As Object, ByVal e As CommandEventArgs) Ligne 110 : DgTickets.Items.Item("imgDetail").Attributes.Add(CType(e.CommandArgument, String), CType(e.CommandName, String)) Ligne 111 : End Sub Ligne 112 :
Après avoir fait quelques recherches sur les items, ils s'avèrent qu'il faut que j'indique l'index de mon item d'où ma question comment fait-on pour récupérer l'index d'un item dans une colonne de datagrid ?