Récupéré l'index du bouton sur sur lequel on click (dans une gridview - ButtonFi
jululu
Messages postés18Date d'inscriptionlundi 16 mars 2009StatutMembreDernière intervention14 juin 2009
-
16 mars 2009 à 10:24
jululu
Messages postés18Date d'inscriptionlundi 16 mars 2009StatutMembreDernière intervention14 juin 2009
-
30 avril 2009 à 10:33
Bonjour;
j'ai un souci et malgré toute les réponses a ce sujet je n'ai pas réussi a trouvé la solution : ( j'aimerai récupéré l'index du bouton sur lequel je click (dans une gridview - ButtonField) merci <?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
jululu
Messages postés18Date d'inscriptionlundi 16 mars 2009StatutMembreDernière intervention14 juin 2009 16 mars 2009 à 19:28
Merci pour cette réponse rapide j'ai oublier de préciser que ct en c#.net ,le bouton est dans une gridview, je voudrai récupéré la ligne sur lequel le bouton est cliqué. Je v quand meme regardé merci
PascalCmoa
Messages postés239Date d'inscriptionmercredi 19 février 2003StatutMembreDernière intervention17 janvier 20135 17 mars 2009 à 17:37
Bonjour,
C'est assez simple en fait.
Il faut donner un commandName au gridView. Cette action sera à placer dans un ButtonField (Lien, Image ou Bouton).
Ensuite sur l'évènement onRowCommand faire:
if e.CommandName.Equals("maCommande") then
' Je récupère le numéro de la ligne sélectionnée.
Dim index as integer = Convert.ToInt32(e.CommandArgument)
' Je récupère la ligne sélectionnée
Dim row as GridViewRow = monGridView.Rows(index)
' Je peux maintenant avoir accès à tous mes champs
Dim monId as Integer = Integer.Parse(row.Cells(0).Text) ' Par exemple
...
Traitement à réaliser
...
end if
PascalCmoa
Messages postés239Date d'inscriptionmercredi 19 février 2003StatutMembreDernière intervention17 janvier 20135 17 mars 2009 à 17:40
Oups j'ai oublié
tu peux maintenant avec ma méthode accéder à ton bouton en faisant:
dim monBouton as Button = CType(row.FindControl("leBouton"), Button)
ensuite tu pourras récupérer l'index en faisant: monBouton.ClientID
hamoudaman
Messages postés8Date d'inscriptionmercredi 25 février 2009StatutMembreDernière intervention30 avril 2009 30 avril 2009 à 01:14
bonjour, voila pour récupérer l'indexe dans ton grid moi j'utilise cette astuce:
d'abord si tu remplis ton grid dans la page loader tu auras une erreur du genre cause validation enable = false .....
donc il faut remplire ton grid dans:
if (!IsPostBack)
{
Remplire_GridCategorie(); // exemple de nom de mon grid
}
ensuite tu ajoute une colonne dans ton grid avec un button ou image button et dont sont commandeargument tu le met eval quelque chose qui contient ta ligne
exemple dans mon grid jai mis:
' onclick="Modifier_Click" ToolTip="Modifier" />
la clé primair Ligne c'est une colonne dans mon grid voila comment je lé remplie:
DataTable dTable = new DataTable();
DataRow dRow = null;
dTable.Columns.Add("Ligne");
dTable.Columns.Add("Id");
dTable.Columns.Add("Categorie");
for (int i = 0; i < List_Categorie.Count; i++)
{
dRow = dTable.NewRow();
dRow["Ligne"] = i; // i allant de 0 jusqu'a la longeur de ma liste(list catégorie)
dRow["Id"] = "tu peut mettre ce que tu veux comme id ou autre chose";
dRow["Categorie"] = "bla bla bla bla"; // ...etc
voila tou j'èspéere que c'est s'imple si t'as pas bien compris envois moi un mail sur hamoudaman@yahoo.fr et je t'envérai un petit projet c# et bonne chance