代码之家  ›  专栏  ›  技术社区  ›  Bob Fincheimer

网格视图-嵌套控件是否需要ViewState

  •  1
  • Bob Fincheimer  · 技术社区  · 16 年前

    我使用的是ASP.NET 2.0,所以这会进入控制状态,而不是视图状态吗?

    <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等):

    资料来源: http://msdn.microsoft.com/en-us/library/1whwt1k7.aspx

    2 回复  |  直到 16 年前
        1
  •  1
  •   JohnB    16 年前

    这个 article explains how to use ControlState . 也许你需要重写 SaveControlState TemplateField ControlState .

    this article :

    “需要一些编程。ASP.NET页面框架为控制状态提供了基础,控制状态是一种自定义状态持久机制。要充分利用控制状态,必须编写代码以保存和加载控制状态。“

    也可能有帮助:

    Control State vs. View State Example

    ASP.NET State Management Overview

        2
  •  2
  •   Joel Etherton    16 年前

    控件不管理自己从回发到回发的状态。这就是ViewState的用途。Gridview中的控件是从viewstate中存储的数据绑定的,除非在每次回发时绑定控件(不可取)。