繁体   English   中英

在ASP网页中单击按钮后,Gridview分页不起作用

[英]Gridview Paging not working after button click in asp web page

我在网页中有下拉菜单和一个按钮。 单击此按钮后,我将获得带有页码的griview。 但是当我单击任何页码时,gridview消失了(起初我的面板是不可见的)。我尝试了许多解决方案,但没有一种起作用。 您可以检查代码中的错误吗?

 <asp:GridView ID="gv_AllEmployees" runat="server"
    class="table table-striped table-bordered table-hover"
    AutoGenerateColumns="False"
    OnRowDataBound="gv_AllEmployees_RowDataBound"
    AllowPaging="true" PageSize="15"
    OnPageIndexChanging="gv_AllEmployees_PageIndexChanging">

protected void Page_Load(object sender, EventArgs e)
{
    dt_Departments = ViewsLogic.GetDepartments();
    if (!IsPostBack)
    {
        ddlDepartment.DataSource = dt_Departments;
        ddlDepartment.DataTextField = "DepartName";
        ddlDepartment.DataValueField = "DeptId";
        ddlDepartment.DataBind();
        ddlDepartment.Items.Insert(0, new ListItem("Select Department", "Select Department"));

        ListItem lst = new ListItem("All Departments", "-1");
        ddlDepartment.Items.Insert(ddlDepartment.Items.Count, lst);
       this.BindAllEmpLog();
        //gv_AllEmployees.Visible = true;
    }

}

protected void gv_AllEmployees_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
    gv_AllEmployees.PageIndex = e.NewPageIndex;
    BindAllEmpLog();

}

void BindAllEmpLog()
{

    dt_AllEmpLog = ViewsLogic.GetAllEmpLog(date.Date);
    //gv_AllEmployees.PageIndex = newPageIndex;
    gv_AllEmployees.DataSource = dt_AllEmpLog;

    gv_AllEmployees.DataBind();
    pnl_AllEmployees.Visible = true;
}

protected void btnSearch_Click(object sender, EventArgs e)
{
    pnl_Grids.Visible = false;
    lblError.Visible = false;
    pnl_AllEmployees.Visible = false;
    date = Convert.ToDateTime(txtDate.Text);
    if (ddlDepartment.SelectedIndex < 1)
    {
        pnl_Grids.Visible = false;
        pnl_AllEmployees.Visible = false;
        lblError.Text = "Please Select a department from the list";
        lblError.Visible = true;

    }
   else if (ddlDepartment.SelectedIndex == ddlDepartment.Items.Count - 1) //If last item Selected
    {
        BindAllEmpLog();


    }
    else
    {

感谢大伙们。 我找到了解决方案。 由于下一行,我没有在索引更改的数据表中获取数据。 我在BindAllEmpLog()方法中复制了这一行。 那么它工作正常。

date = Convert.ToDateTime(txtDate.Text);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM