private void Button1_Click(object sender, EventArgs e)
{
   int i = 1;
   if (ViewState["clickCount"] != null)
      i = (int)ViewState["clickCount"];   ViewState["clickCount"] = ++i;
   Label1.Text = i.ToString();
}

解决方案 »

  1.   

    protected int i=0;
    if(null == ViewState["i"])
    {
     ViewState["i"] = i;
    }
    private void Button1_Click(object sender, System.EventArgs e)
    {
    ViewState["i"] = Convert.Int32(ViewState["i"]);
    Label1.Text=ViewState["i"].ToString();
    }
      

  2.   

    ViewState["i"] = Convert.Int32(ViewState["i"])+1;
      

  3.   

    因为你的i没有保存状态protected int i=0;改成
    protected int i
    {
      get
      {
        if(ViewState["i"]!= null)
         return (int)ViewState["i"];
        else
         return 0;
      }
    set
    {
       ViewState["i"] = value;
    }
    }
      

  4.   

    点一次,就提交一次,你的i又没有保存,每次多初始化,所以当然是1拉!用ViewState["i"]=i;