vacio net muestra mostrar llenar lista datos con asp asp.net gridview paging

asp.net - muestra - mostrar gridview vacio asp net



La búsqueda en Gridview no funciona ¿Los datos de la segunda página no muestran datos? (4)

Su tabla de datos se inicializa en cada carga de página, por lo que debe obtener la tabla de datos cada vez antes de vincularla a la cuadrícula. Establezca su índice de página antes de vincularlo a la grilla

Entonces tu código debería ser así

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(); }

mi gridview

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

mi código

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) { SqlDataAdapter da = new SqlDataAdapter("select customername,contactno,address from employee ", con); da.Fill(table); BindEmployee(); } } public void BindEmployee() { exportGrdVw.DataSource = table; exportGrdVw.DataBind(); } protected void exportGrdVw_PageIndexChanging(object sender, GridViewPageEventArgs e) { exportGrdVw.PageIndex = e.NewPageIndex; BindEmployee(); }

el problema es que se muestra gridview pero cuando hago clic en la página 2. Los datos de la segunda página no se muestran (en blanco). pls me ayudan a resolver este problema. ver que el código es correcto o no


Use como abajo

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(); }


No es necesario llamar a la base de datos en exportGrdVw_PageIndexChanging . Simplemente declare la tabla DataTable como estática


Puedes intentar esto:

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();