Asp.net gridview没有';单击事件后不显示更新数据

Asp.net gridview没有';单击事件后不显示更新数据,asp.net,.net,c#-4.0,gridview,webforms,Asp.net,.net,C# 4.0,Gridview,Webforms,我在gridview中填充了存储过程,它需要注册,所以TEXTBOX是控制参数,存储过程位于服务器的数据库中,该数据库接收来自平板设备的新记录。在文本框中输入数据后,当我点击搜索按钮时,它会显示新记录,但问题是,若从平板电脑接收到新数据,我点击搜索按钮,然后它不会显示新数据,我必须返回主页,然后返回此页面,再次输入数据并点击搜索按钮,然后它会显示原因 代码: 看起来您没有在searchClick上刷新gridView的数据。我认为您应该使用类似gvvehicledger.databind()的s

我在gridview中填充了存储过程,它需要注册,所以TEXTBOX是控制参数,存储过程位于服务器的数据库中,该数据库接收来自平板设备的新记录。在文本框中输入数据后,当我点击搜索按钮时,它会显示新记录,但问题是,若从平板电脑接收到新数据,我点击搜索按钮,然后它不会显示新数据,我必须返回主页,然后返回此页面,再次输入数据并点击搜索按钮,然后它会显示原因

代码:


看起来您没有在searchClick上刷新gridView的数据。我认为您应该使用类似gvvehicledger.databind()的smthng。
(有一个关于这个主题的博客)

在搜索数据之后,您应该设置网格的数据源,它是新搜索的数据

范例

private void serach_click()
{
    // your code to retrieve your data

    gridview.datasource = your data source;
    gridview.databind();
}

为什么它不能正常工作?为什么在重定向到页面后它会工作,为什么不点击搜索按钮?对不起什么?不要得到用户界面不要得到“硬编码”的东西。您已经这样做了:protected void btnSearch_Click1(object sender,EventArgs e){gvvehicledger.Visible=true;}因此,您也可以毫无问题地使用它:protected void btnSearch_Click1(object sender,EventArgs e){gvhicledger.datasource=yourDataSource;gvhicledger.databind();gvVehicleLedger.Visible=true;}还是我遗漏了什么?yourDataSource可以是一个变量,因此它不是硬编码的。在本例中,唯一硬编码的是数据视图的结构。
if(!IsPostBack)
        {
            gvVehicleLedger.Visible = false;
        }

protected void btnSearch_Click1(object sender, EventArgs e)
    {
        gvVehicleLedger.Visible = true;
    }
private void serach_click()
{
    // your code to retrieve your data

    gridview.datasource = your data source;
    gridview.databind();
}