通过GridView - ASP.NET进行分页时保留表单数据

时间:2009-04-21 17:05:49

标签: c# .net asp.net gridview paging

我的ASP.NET页面上有一个GridView控件,当用户执行搜索时,该控件绑定到结果集。我创建了一个带有CheckBox控件的附加TemplateField列,以允许用户从结果集中选择一组子记录。我在GridView控件中实现了分页,当用户检查复选框控件和结果集中的页面时,它不会保留任何选中的复选框。

<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>

在通过GridView进行分页时,Whaat是保留已选中复选框的最佳方法吗?

2 个答案:

答案 0 :(得分:1)

你必须自己维持这个状态。这个Thread显示了如何在VB中完成此操作。只需使用此VB to C# converter即可获得所需的代码

答案 1 :(得分:0)

在gridview分页事件期间,您需要循环遍历行并保存复选框的选中状态(以及datakey)。同样,您需要从已保存的检查状态列表中读取,以在gridview rowdatabound事件期间重新检查框。