public string str;
    protected void Page_Load(object sender, EventArgs e)
    {            str = "1";
    }
    protected void Button2_Click(object sender, EventArgs e)
    {
        Response.Write(str);
    }

解决方案 »

  1.   

    用ViewState可以解决问题
    public string str
    {
    get
    {
    return ViewState["str"] == null ? string.Empty : ViewState["str"].ToString();
    }
    set
    {
    ViewState["str"] = value;
    }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
    if (!IsPostBack)
    {
    str = "1";
    }
    }protected void Button1_Click(object sender, EventArgs e)
    {
    Response.Write(str);
    }
      

  2.   

    public Static string str;
      

  3.   

    哦..tks
    用Static就好用了...
    不是很理解static..麻烦哪位稍微给讲一下?
      

  4.   

    static 声明的变量是静态变量,是属于类的而不是属于成员你第一点击后,str赋了初值1,以后再点击它能保持刚才的值不过事实上,虽然这样用起来简单,但从效率上来说,用ViewState更好
      

  5.   

    哦..谢谢大家..如果我这个str是个实体类呢??用哪个效率更好?
      

  6.   

    试了一下,用viewstate的话,html会多出来2k多的viewstate....