0
基本上我设置我的数据源在我的gridview到我手动填写的数据表。有没有办法让gridview自动接收和排序?当我尝试去gridview上的另一个页面时,它给了我一个例外,表示分页事件没有被捕获(这意味着我没有事件的方法)。我也允许分页设置为true。GridView与DataTable作为源不自动处理或排序
基本上我设置我的数据源在我的gridview到我手动填写的数据表。有没有办法让gridview自动接收和排序?当我尝试去gridview上的另一个页面时,它给了我一个例外,表示分页事件没有被捕获(这意味着我没有事件的方法)。我也允许分页设置为true。GridView与DataTable作为源不自动处理或排序
你必须实现OnPageIndexChanging
事件寻呼,OnSorting
事件进行排序,如:
<asp:GridView ID="GridView1" OnPageIndexChanging="GridView1_PageIndexChanging" OnSorting="GridView1_Sorting" runat="server" />
,并在后面的代码:
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
GridView1.DataBind();
}
protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
{
// sort expression
}
你可以参考这个Example
我这样做,但每当我尝试更改页面时,控件都会消失。 – tareqx3 2012-07-16 13:38:21
你在pageload事件中写了什么?我想你在'if(!IsPostBack)'中编写了网格绑定' – 2012-07-16 13:44:57
是的,这是一个很常见的错误,人们忘记了在ASP代码中检查IsPostBack:P – 2012-07-16 14:52:33