Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用单独的按钮将GridView发送到编辑模式_C#_Asp.net_Gridview_Webforms_Inline Editing - Fatal编程技术网

C# 使用单独的按钮将GridView发送到编辑模式

C# 使用单独的按钮将GridView发送到编辑模式,c#,asp.net,gridview,webforms,inline-editing,C#,Asp.net,Gridview,Webforms,Inline Editing,我使用了GridView.EditIndex=-1来完成此操作,但是我总是需要单击按钮两次。如果数据已存在于gridview中,则会将其从gridview中删除。为什么会这样 我试过: this.subBindGrid() 靠自己 这两者都没有任何区别。每当您单击页面上的任何控件时。由于http的无状态性质,因此会将请求发送到服务器以获取新页面。每次单击按钮,就会看到一个新页面,其中gridview的DataSource为空。解决这个问题。在GridView.EditIndex=-1之后 绑定数

我使用了
GridView.EditIndex=-1
来完成此操作,但是我总是需要单击按钮两次。如果数据已存在于gridview中,则会将其从gridview中删除。为什么会这样

我试过:
this.subBindGrid()

靠自己


这两者都没有任何区别。

每当您单击页面上的任何控件时。由于http的无状态性质,因此会将请求发送到服务器以获取新页面。每次单击按钮,就会看到一个新页面,其中gridview的
DataSource
为空。解决这个问题。在
GridView.EditIndex=-1之后

绑定数据源并
subBindGrid()请记住,只有当
.Tables[0].DefaultView
不为空时,此选项才有效。好的,我有一个数据适配器
holdone
和数据集
holdall
。如何给
holdall
一些持久性,以便指向它的
DefaultView
不会返回null?您可以使用会话进行状态管理。创建表的默认视图,并将其存储在会话中,以便在需要时随时使用。但若您希望每次都得到更新的数据,那个么必须从数据库中填充数据表。
protected void subBindGrid()
{
    GridView.Columns[7].Visible = true;
    GridView.DataSource = <filepath>.Tables[0].DefaultView;
    GridView.DataBind();
}
GridView.DataBind();