单击按钮后页面会PostBack呀,当然是20

解决方案 »

  1.   

    点击按钮的时候IsPostBack是true,!IsPostBack就是false.当然是走到i=20;这里
      

  2.   

            if (!IsPostBack)//首次加载  
            { 
                i = 10; 
            } 
            else //页面回发
            { 
                i = 20;            
            } 
      

  3.   

    每次单击按钮,Page_Load必定执行,而此时一定是回传页,当然执行else里的代码,所以是20
      

  4.   

    用户单击按钮  是PostBack牙。。(Page.IsPostBack=true)按照你那逻辑 就进入else里面去了。。
      

  5.   

    不用Button1_Click!<asp:Button ID="Button1" runat="server" Text="Button" oncommand="Button1_Command"  />
    public partial class lx: System.Web.UI.Page
    {
        int i ;
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                i = 10;
                Button1.CommandArgument = i.ToString();
            }
            else
            {
                i = 20;
            }     }
        protected void Button1_Command(object sender, CommandEventArgs e)
        {
            Response.Write("i=" + Convert.ToInt32(e.CommandArgument) + " <BR>");//这里的结果应该是10
        }
    }我自己都觉得有点...
      

  6.   

           if (!IsPostBack)//首次加载  
            { 
                i = 10; 
            } 
            else //页面回发 
            { 
                i = 20;            
            } 
      

  7.   

    肯定是20啊,每次点击后初始化I后执行ELSE
      

  8.   

    页面初次加载是10,点击事件回发后就走else了,只要是在这个页面操作的,回发后都走else.所以都是20.
      

  9.   

    引用 7 楼 jiang_jiajia10 的回复:
    C# code      if (!IsPostBack)//首次加载  
            { 
                i = 10; 
            } 
            else //页面回发 
            { 
                i = 20;            
            }