2009-04-21 3 views
0

J'ai un contrôle GridView sur ma page ASP.NET qui se lie au jeu de résultats lorsque l'utilisateur exécute une recherche. Je crée une colonne TemplateField supplémentaire avec un contrôle CheckBox pour permettre à l'utilisateur de sélectionner un sous-ensemble d'enregistrements à partir du jeu de résultats. J'ai mis en place la pagination dans le contrôle GridView et lorsque l'utilisateur vérifie le contrôle case à cocher et les pages à travers le jeu de résultats, il ne conserve aucune des cases cochées.Conserver les données de formulaire lors de la pagination via un GridView - ASP.NET

<asp:GridView ID="MyGridView" runat="server" AllowPaging="true" AutoGenerateColumns="false"> 
    <Columns> 
     <asp:TemplateField> 
      <ItemTemplate> 
       <asp:CheckBox ID="MyCheckBox" runat="server" /> 
      </ItemTemplate> 
     </asp:TemplateField> 
    </Columns> 
</asp:GridView> 

whaat est la meilleure façon de conserver les cases cochées en feuilletant le GridView?

Répondre

1

Vous devez maintenir l'état vous-même. Ce Thread montre comment cela peut être fait dans VB. il suffit d'utiliser ce VB to C# converter pour obtenir votre code

0

Vous devrez effectuer une boucle sur les lignes et enregistrer l'état vérifié des cases à cocher (avec une clé de données) pendant l'événement de pagination gridview. De même, vous aurez besoin de lire à partir de votre liste d'état de vérification sauvegardée pour revérifier les boîtes au cours de l'événement gridview rowdatabound.