zoukankan      html  css  js  c++  java
  • 动态创建ASP.NET控件并保持其状态分析及实现

    动态创建asp.net控件并保存其状态,简要总结如下:
    1:背景知识:需要了解Page的生存周期。
    2:方法总结:
    1>
    在页面代码文件中的声明区域写(这里以Label控件为例):
    Label x = new Label();
    pageload事件中代码为:
    protected void Page_Load(object sender, EventArgs e)
    {
        this.Page.Controls.Add(x);
    }
    在页面需要设定x值时写: x.Text = "zzz";等等。如此,无论页面如何刷新,即可实现动态创建控件并保存状态目的。

    2>
    思路:将控件动态添加到页面已有的控件或者控件容器中去,然后根据需要动态设定其状态即可。
    例如:
    <asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound">
                              <ItemTemplate>
                                <asp:Literal ID="tr" runat="server"></asp:Literal>
                            </ItemTemplate>                   
    </asp:Repeater>
    在Repeater1_ItemDataBound事件中写:(e.Item.FindControl("ds") as Literal).Text = "";

    两种思路相通之处:控件一旦被添加到页的控件树里,TrackViewState()方法就负责跟踪其状态。只要控件被添加到控件树里,这个方法就会被自动的触发。

    文章出处:www.cnblogs.com/jizhong

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。否则保留追究法律责任的权利。

  • 相关阅读:
    深入浅出TCP之listen
    indexing and hashing
    c++四种强制类型转化
    c++实现web服务框架
    MVC、MVP、MVVM概念解析
    常用设计模式
    [React]虚拟DOM
    防抖和节流
    函数柯里化
    apply, bind, call方法剖析
  • 原文地址:https://www.cnblogs.com/jizhong/p/1238647.html
Copyright © 2011-2022 走看看