【发布时间】:2011-06-30 15:38:43
【问题描述】:
我有一个 GridView,
<asp:GridView ID="managerList" runat="server" DataSourceID="SqlDataSource2">
在后面的代码中,
protected void Page_Load(object sender, EventArgs e)
{
SqlDataSource2.SelectCommand = "select * from manager";
managerList.AllowPaging = true;
}
当我加载页面时,它工作正常,分页也工作正常。
然后我想通过单击搜索按钮来获取列表的子集:
protected void btnSearch_Click(object sender, EventArgs e)
{
SqlDataSource2.SelectCommand = "select * from manager where age > 30";
managerList.DataBind();
}
它工作正常,给我列表的子集。
但是,当我单击“下一页”时,它会给我整个列表,第 2 页。我知道这是因为它发送回发,并且绑定了原始选择命令。但是,当我单击“下一页”时,我该怎么做才能给我列表的子集?
谢谢!
更新: 如果我把代码改成这样:
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
SqlDataSource2.SelectCommand = "select * from manager";
managerList.AllowPaging = true;
}
}
当我点击“下一页”时,它给了我一个空列表。
可能想添加 IsPostBack,但这不起作用。
【问题讨论】:
标签: c# asp.net gridview paging page-index-changed