zoukankan      html  css  js  c++  java
  • ViewState

    ViewState是ASP.NET服务器控件非常重要的一个属性。

    ViewState用来保存和传递ASP.NET控件状态(值),反映到HTML。ViewState是通过隐藏输入框(HiddenField)来工作的。

    例:

    HTML <asp:Button ID="btnAdd" runat="server" Text="Add" OnClick="btnAdd_Click" /><br />
        
    <asp:Label ID="lblAcounter" runat="server" Text="0"></asp:Label>
    C#      protected void btnAdd_ClickTest(object sender, EventArgs e)
            {
                lblAcounter.Text 
    = (Int32.Parse(lblAcounter.Text) + 1).ToString();
            }

    点击Button,ASP.NET把控件的状态序列化成一个字符串,通过ViewState回传到服务器,处理后再返回到浏览器。如此,此例中Label的值不断加1。禁掉ViewState后,Label的值将不能回传到服务器,Label将一直为1,不能递增。

    1. 可以在<%@ Page %>中加入Trace="True" 来监视ViewState。

    2. 也可以在Web.config或者页面或者控件中设置EnableViewState="false",来禁掉ViewState。

    可以用ViewState来在前台页面读取后台的值,进行前后台传值。可以在后台对ViewState进行读写,如:this["strTest"] = "Test String"; 或者string test=this["strTest"]; 在前台页面,只能读取ViewState,不能写:var test="<% =this["strTest"] %>";

    ViesState不能跨页面。

    ASP.NET 2.0 提供了一个新的特性 Control State,Control State和ViewState类似,Control State只保存主要的状态信息。禁掉ViewState时不会同时禁掉Control State,不过Control State默认是关闭的。Control State的一个重要应用是 GridView Control使用Control Satate保存所选的Row

  • 相关阅读:
    监控系统
    RocketMQ入门介绍
    Linux的虚拟内存详解(MMU、页表结构) 转
    快速排序
    如何选择分布式事务解决方案? 转
    java 基本数据类型相关思考
    互联网项目中mysql应该选什么事务隔离级别 转
    线上服务的FGC问题排查,看这篇就够了! 转
    什么是Base64? 转
    业界难题-“跨库分页”的四种方案 转
  • 原文地址:https://www.cnblogs.com/niuniu1985/p/1974439.html
Copyright © 2011-2022 走看看