Colonne sélectionnée dans un GridView
-
jeudi 3 mai 2012 23:16
Bonjour tout le monde,
Je suis en train de refaire l'atelier 6 du coach aspnet, et je me pose une question quant à la sélection d'une ligne dans un GridView, plus exactement quant à sa suppression.
Pour supprimer une annonce de la sélection dans le profil utilisateur, sur la page SelectionAnnoncesParRegion le lien fonctionne comme prévu. En revanche, sur la page MaSelectionDAnnonces, le bouton de suppression ne supprime rien, au motif que le Ann_Id envoyé à Delete puis SupprimerAnnonce vaut 0.
Le bouton de suppression se met à fonctionner à merveille si je renseigne la propriété DataKeyNames du GridView, pour y mettre "Ann_Id". Là où je m'étonne, c'est qu'il n'y a pas ça dans la solution proposée.
Quels sont les moyens d'indiquer la colonne qui doit être retournée dans le paramètre de suppression, lors du clic sur le bouton de suppression du GridView ?
En effet, voilà déjà deux moyens de le faire, et je pourrais bien tomber en clientèle sur l'un ou l'autre à maintenir.
Toutes les réponses
-
jeudi 10 mai 2012 14:57Propriétaire
Bonjour,
Pouvez-vous svp nous donner le lien vers l’atelier dont vous parlez ? Le coach ASP.NET a 4 parties et au niveau de travaux pratiques on a plusieurs sections avec plus de 6 ateliers. Je vous invite lire cet article pour voir comment gérer l’action de supprimer un enregistrement dans un GridView. Vous pouvez aussi gérer par code cette action, par exemple, via la méthode DeleteRow et la propriété SelectedRow.
Bonne journée,
Cipri
Ciprian DUDUIALA, MSFT  
•Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.
- Marqué comme réponse Gloops vendredi 11 mai 2012 08:49
-
vendredi 11 mai 2012 08:47
Bonjour,
Pouvez-vous svp nous donner le lien vers l’atelier dont vous parlez ? Le coach ASP.NET a 4 parties et au niveau de travaux pratiques on a plusieurs sections avec plus de 6 ateliers.
Ah, oui, j'ai vu depuis qu'il y a un autre atelier 6, sur l'accès aux données.
Bon c'était dans la construction d'un site web en 12 ateliers, là :
Personnaliser l'application avec les profils utilisateurs
Je vous invite lire cet article pour voir comment gérer l’action de supprimer un enregistrement dans un GridView. Vous pouvez aussi gérer par code cette action, par exemple, via la méthode DeleteRow et la propriété SelectedRow.
Dans la page MaSelectionDAnnonces, le GridView est basé sur un ObjectDataSource, la DeleteMethod s'appelle bien Delete, avec un DeleteParameter Ann_Id de type Int32. Un point d'arrêt dans la méthode montre que Ann_Id est reçu à 0, sauf si je renseigne le DataKeyNames. En parcourant ma source et celle de la correction l'autre différence ne m'a pas sauté aux yeux. Nul doute qu'en lançant une comparaison ligne à ligne je finirais bien par tomber dessus, mais je me doutais bien que l'occasion était bonne pour viser le bon chapitre, puisque je vais avoir repéré au moins deux façons de s'y prendre, si il y en a encore d'autres autant le savoir.
Je reviens dessus bientôt, là pour le moment il y a un WebService à appeler qui m'attend ...
Merci pour ces références.


