当前位置:编程学习 > C#/ASP.NET >>

为什么 Panel里的事件不能修改全局变量的值

为什么 Panel里的事件不能修改全局变量的值

public partial class Manage_News_Mnclass : System.Web.UI.Page
{ int a=0;
   protected void Page_Load(object sender, EventArgs e)
    { 
    }
   protected void Save_Click(object sender, EventArgs e) //单击页面按钮
   { this.panel1.Visable=true;
    }
    protected void bttn_Click(object sender, EventArgs e) //单击panel里的按钮
    { a=1;
    }
    Response.Write(a); //a的值还是0
} --------------------编程问答-------------------- protected void bttn_Click(object sender, EventArgs e) //单击panel里的按钮
  { 
    a=1;
    Response.Write(a); //a的值还是0  要写到里面,触发后才会有响应

  }
--------------------编程问答-------------------- 写在里面 全局变量岂不是没有意义了  --------------------编程问答-------------------- 你的response写的位置不一样吧,跟asp.net的顺序有关系的,会先执行page_load,然后执行click事件的。 --------------------编程问答--------------------
int a=0;
==>

  int a
        {
            get
            {
                return ViewState["a"] != null ? (int)ViewState["a"]  : 0;
            }
            set
            {
                ViewState["a"] = value;
            }
        }
--------------------编程问答-------------------- --------------------编程问答-------------------- ViewState[""]也不行 出了panel也不起作用 --------------------编程问答-------------------- 如果想设置一个公用的全局变量 只有用Session了 --------------------编程问答-------------------- 肯定可以的.
          . --------------------编程问答-------------------- 不行 你可以试试 把 a换成ViewState["a"] --------------------编程问答-------------------- 不是直接
换,参见 4楼. --------------------编程问答--------------------
   <asp:Panel ID="Panel1" runat="server" Height="50px" Width="125px">
            <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button1" /></asp:Panel>
        <asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="Button2" />



 int a
        {
            get
            {
                return ViewState["a"] != null ? (int)ViewState["a"] : 0;
            }
            set
            {
                ViewState["a"] = value;
            }
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            a = 123;
        }

        protected void Button2_Click(object sender, EventArgs e)
        {
            Response.Write(a.ToString());
        }
--------------------编程问答-------------------- 果然 学习了!
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,