1

我有的:

我有一个没有分页的 GridView。在包含页面的 Page_Load 处理程序中,我从表存储中读取用户特定的值并将它们存储在一个集合中,以便 ObjectDataSource 的 SelectMethod 可以获取它们。

我想要的是:

当用户从 GridView 所在的同一页面上传一些新数据时,我希望 GridView 在旧数据之外显示新数据,而无需再次查询存储。

有用的东西:

Page_Load 处理程序中的 IsPostback 有助于避免在数据仍处于 ViewState 中时进行查询。用户单击上传按钮后,由于我猜是 GridView 的 ViewState,他仍然可以看到旧数据。

我的尝试:

我尝试从 GridView 派生并制作自己的用户控件,以便访问返回 StateBag 但无法找到其中显示的用户数据的 ViewState 属性。它仅显示 DataSourceID、_!ItemCount 等内容。

我的问题:

如何从 GridView 访问 ViewState 以便从后面的代码中检索列值或 DataKeyName 值等数据。

附加信息:

问题的答案gridview是否将数据保存在viewstate中?声明 GridView 将其数据保存在其 ViewState 中。

4

1 回答 1

1

您绝对不想访问 GridView 的视图状态。这是控件的内部实现细节,可能随时更改。

您需要做的就是DataBind()在设置新数据后调用 GridView,控件将显示更新的数据。

于 2013-01-07T00:10:50.417 回答