控件中包含输入表单txbContent和按钮btnSubmit然后在另一页中动态载入了控件。并且是循环很多个的。现在是我如何在控件后置代码中处理接收数据呢。如果拖一个控件到页面上是可以private void btnSubmit_Click(object sender, System.EventArgs e)是可以接收到值的。但通过循环动态载入到页面中许多控件就不行了。

解决方案 »

  1.   

    你要将动态生成的控件绑定事件,
    例如LinkButton1动态控件名。
     LinkButton1.Click += new System.EventHandler(btnSubmit_Click);
      

  2.   

    你可以试一下用Button对象数组存储,用公共的一个事件也可以识别每一个对象的
      

  3.   

    给你一段代码做参考,然后自己修改。
      private void Page_Load(object sender, System.EventArgs e) 
        { 
          Control c3 = ParseControl("<asp:Button id='Button3' text='Btn3' commandname='Btn' commandargument='b3' runat='server' />"); 
          Control c4 = ParseControl("<asp:Button id='Button4' text='Btn4' commandname='Btn' commandargument='b4' runat='server' />"); 
          PlaceHolder2.Controls.Add(c3); 
          PlaceHolder2.Controls.Add(c4); 
          Button myBut = (Button)Page.FindControl("Button3"); 
          myBut.Command += new CommandEventHandler(this.OnButton); 
          Button myBut2 = (Button)Page.FindControl("Button4"); 
          myBut2.Command += new CommandEventHandler(this.OnButton); 
        }     public void OnButton(Object Sender, CommandEventArgs e) 
        { 
          switch (e.CommandArgument.ToString().ToLower()) 
          { 
            case "b0": 
              Label1.Text = "Button 0"; 
              break; 
            case "b1": 
              Label1.Text = "Button 1"; 
              break; 
            case "b3": 
              Label1.Text = "Button 3"; 
              break; 
            case "b4": 
              Label1.Text = "Button 4"; 
              break; 
          }; 
        }