J'ai une classe GridView étendue, GridViewEx, qui hérite de la grille de base ASP.NET. Je remplace la méthode CreateColumns pour intercepter la collection de colonnes et injecter ma propre colonne, contenant un CheckBoxField modifié.La grille personnalisée multisélect brise les commandes Row Update
(Sidenote:. J'ai essayé à la recherche d'une autre méthode de stockage et de mise à jour les lignes ont été sélectionnées et simplement en cochant la case comme un mécanisme d'affichage, mais finalement la case à cocher était la méthode la plus simple pour manipuler tout)
Le CheckBoxField a sa propriété ReadOnly définie sur true lors de sa création (et elle reste vraie lorsqu'elle est ajoutée à la collection de colonnes), ce qui devrait l'empêcher d'être transmis en tant que paramètre pour les demandes de mise à jour par rapport à la source de données gridview.
Comme vous pouvez le déduire, cela ne se produit pas. Lorsque j'essaie d'effectuer une modification et une mise à jour de ligne, j'obtiens un avertissement "Trop de paramètres" avec un seul paramètre qui n'a pas de nom. Si je désactive la fonction multisélect, cela disparaît. Donc, je sais que mon checkboxfield n'est pas traité comme un champ Readonly. Mais je ne sais pas comment le réparer!
Des idées sur où, quand et comment j'ai besoin de configurer ce champ pour qu'il ne soit pas transmis automatiquement en tant que paramètre à mes mises à jour?