在page_load中用if(!IsPostBack){}把你只要加载一次数据包起来,表单提交或者响应服务器控件事件以后不会有影响

解决方案 »

  1.   


      这样就可以自动对应事件和对象了呀  this.Button1.Click += new System.EventHandler(this.Button1_Click);
      
      意思是: button1的click 事件的消息 响应句柄是Button1_Click(.....)
      

  2.   

    你这样还不如使用Html控件。每一个按钮都不要runat=server 
    增加一个Hidden <input type="hidden" id="hd" runat="server">
    加一个 javascript函数
    function a(id)

    document.forms[0].hd.value="id"forms[0].submit();
    }
    然后每个按钮都有 <input type=button id="bt1" onclick="a('bt1')">然后在Page_Load里面判断到底是哪个按钮提交
    hd.value=??
      

  3.   

    go through Request.Form.AllKeys, or just check Request.Formfor example, say you have Btn1 and Btn2if (Request.Form[Btn1.UniqueID] != null)
    {
      //Btn1 is clicked
    }
    else if (Request.Form[Btn2.UniqueID] != null)
    {
      //Btn2 is clicked
    }but this might not be a good solution