Asp.net Gridview中的分页不工作第二页数据不显示数据?

Asp.net Gridview中的分页不工作第二页数据不显示数据?,asp.net,gridview,paging,Asp.net,Gridview,Paging,我的网格视图 <div style="margin-left: 280px"> <asp:GridView ID="exportGrdVw" runat="server" BackColor="White" AllowPaging="True" PageSize="3" OnPageIndexChanging="exportGrdVw_PageIndexChanging" onpageindexchanged="ex

我的网格视图

<div style="margin-left: 280px">
   <asp:GridView ID="exportGrdVw" runat="server" BackColor="White"  
        AllowPaging="True" PageSize="3" 
        OnPageIndexChanging="exportGrdVw_PageIndexChanging" 
        onpageindexchanged="exportGrdVw_PageIndexChanged">
   </asp:GridView>
</div>
问题是gridview正在显示,但当我单击第2页时。第二页数据未显示(空白)。请帮我解决这个问题。
查看代码是否正确

您的datatable在每次页面加载时都会初始化,因此您需要获取datatable 每次绑定到网格之前。 在将页面索引绑定到网格之前设置页面索引

所以你的代码应该是这样的

public void BindEmployee(int newPageIndex = -1)
{
    SqlDataAdapter da = new SqlDataAdapter("select customername,contactno,address from employee ", con);
    da.Fill(table);
    exportGrdVw.PageIndex = newPageIndex;
    exportGrdVw.DataSource = table;
    exportGrdVw.DataBind();
}
使用如下

SqlConnection con = new SqlConnection("server=acer-Pc\\Sql;database=MYDB;trusted_connection=yes");
//DataSet ds = new DataSet();
DataTable table = new DataTable();    
protected void Page_Load(object sender, EventArgs e)
{        
   if (!IsPostBack)
   {              
       BindEmployee();
   }
}
public void BindEmployee()
{
    SqlDataAdapter da = new SqlDataAdapter("select customername,contactno,address from employee ", con);
    da.Fill(table);
    exportGrdVw.DataSource = table;
    exportGrdVw.DataBind();
}
protected void exportGrdVw_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
    exportGrdVw.PageIndex = e.NewPageIndex;
    BindEmployee();
}

无需在exportGrdVw\u页面索引交换上调用数据库。只需将DataTable表声明为静态即可

您可以尝试以下操作:

GridView1.PageIndex = e.NewPageIndex;
SqlCommand cmd = new SqlCommand("Select * from Emp_Data ORDER BY [ID] DESC", con);

SqlDataAdapter DA1 = new SqlDataAdapter(cmd);
DA1.Fill(DT1);

GridView1.DataSource = DT1;
GridView1.DataBind();

您的方法“exportGrdVw_PageIndexchange”是什么样子的?在该方法中,您必须再次从数据库中获取数据,然后在绑定之前设置页面索引。尝试了此方法后,仍然无法工作。当单击第2页时,其他任何人在回发后gridview都会消失
GridView1.PageIndex = e.NewPageIndex;
SqlCommand cmd = new SqlCommand("Select * from Emp_Data ORDER BY [ID] DESC", con);

SqlDataAdapter DA1 = new SqlDataAdapter(cmd);
DA1.Fill(DT1);

GridView1.DataSource = DT1;
GridView1.DataBind();