【发布时间】:2011-03-15 21:37:06
【问题描述】:
我有一个带有嵌套文本框的网格视图。我想关闭视图状态,但事实是当发布数据时,gridview 内的文本框不可用(回发时 gridview 中没有行)。
我使用的是 ASP.NET 2.0,所以这会进入控制状态,而不是视图状态吗?
gridview 的示例 ASPX 代码:
<asp:GridView runat="server" ID="myGridView">
<Columns>
<asp:TemplateField ItemStyle-Wrap="false" HeaderText="Name">
<ItemTemplate>
<asp:TextBox runat="server" ID="myTextBox" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
编辑
控件的信息不存储在视图状态中(例如选定的值和 .text 等):
在 ASP.NET 2.0 版中引入的控件状态类似于视图状态,但在功能上独立于视图状态。页面开发人员可以禁用页面的视图状态或单独的性能控制。但是,不能禁用控制状态。控件状态旨在存储控件的基本数据(例如分页控件的页码),这些数据必须在回发时可用,以使控件即使在视图状态已被禁用时也能正常工作。
【问题讨论】:
-
顺便说一句,
ControlState也存储在__VIEWSTATE对象中:stackoverflow.com/questions/1935680/…
标签: asp.net vb.net gridview viewstate