C# 使用Datatable的Gridview分页-不工作
我有一个gridview,它有分页功能,但当我点击第2页时,页面刷新并返回第一页,页面链接也保留在第1页上 任何帮助都将不胜感激:) 页面索引交换:-C# 使用Datatable的Gridview分页-不工作,c#,asp.net,gridview,C#,Asp.net,Gridview,我有一个gridview,它有分页功能,但当我点击第2页时,页面刷新并返回第一页,页面链接也保留在第1页上 任何帮助都将不胜感激:) 页面索引交换:- public void GridView1_PageIndexChanging(object sender,GridViewPageEventArgse) { GridView x = ((GridView)sender); GridView1.DataSource = ViewState["dt_data"
public void GridView1_PageIndexChanging(object
sender,GridViewPageEventArgse)
{
GridView x = ((GridView)sender);
GridView1.DataSource = ViewState["dt_data"];
if (e.NewPageIndex > -1 && e.NewPageIndex <= x.PageCount)
{
x.PageIndex = e.NewPageIndex+1;
}
else
{
e.NewPageIndex--;
}
GridView1.DataBind();
}
修改页面索引交换代码
public void GridView1_PageIndexChanging(object sender,GridViewPageEventArgse)
{
GridView1.DataSource = (DataTable)ViewState["dt_data"];
GridView1.PageIndex = e.NewPageIndex;
GridView1.DataBind();
}
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" PageSize="20"
onpageindexchanging="GridView1_PageIndexChanging"
onrowcommand="GridView1_RowCommand" AutoGenerateColumns="False"
onrowdatabound="GridView1_RowDataBound">
</asp:GridView>
private void BuildResults()
{
DataTable dt01 = obSectionDefinition.List(_criteria.AuditDefinitionGUID, _criteria.ParentGUID, _criteria.ShowObsolete);
// GridView1.PageSize = 20;
// ViewState["dt_data"] = dt01;
GridView1.DataSource = dt01;
GridView1.DataBind();
}
public void GridView1_PageIndexChanging(object sender,GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
BuildResults();
}
私有void BuildResults()
{
DataTable dt01=obSectionDefinition.List(_criteria.AuditDefinitionGUID、_criteria.ParentGUID、_criteria.showObsetable);
//GridView1.PageSize=20;
//ViewState[“dt_数据”]=dt01;
GridView1.DataSource=dt01;
GridView1.DataBind();
}
public void GridView1_PageIndexChanging(对象发送方,GridViewPageEventArgs e)
{
GridView1.PageIndex=e.NewPageIndex;
BuildResults();
}
我收到了一个响应。在页面的其他位置写入,这导致分页失败-将其删除,现在可以工作了为什么要增加e.NewPageIndex?这也不起作用-有东西阻止分页工作
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
BuildResults();
}
}
public void GridView1_PageIndexChanging(object sender,GridViewPageEventArgse)
{
GridView1.DataSource = (DataTable)ViewState["dt_data"];
GridView1.PageIndex = e.NewPageIndex;
GridView1.DataBind();
}
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" PageSize="20"
onpageindexchanging="GridView1_PageIndexChanging"
onrowcommand="GridView1_RowCommand" AutoGenerateColumns="False"
onrowdatabound="GridView1_RowDataBound">
</asp:GridView>
private void BuildResults()
{
DataTable dt01 = obSectionDefinition.List(_criteria.AuditDefinitionGUID, _criteria.ParentGUID, _criteria.ShowObsolete);
// GridView1.PageSize = 20;
// ViewState["dt_data"] = dt01;
GridView1.DataSource = dt01;
GridView1.DataBind();
}
public void GridView1_PageIndexChanging(object sender,GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
BuildResults();
}