WEB开发网
开发学院软件开发C语言 C#动态生成控件以及添加事件处理 阅读

C#动态生成控件以及添加事件处理

 2009-04-01 08:21:45 来源:WEB开发网   
核心提示: 完成以上步骤就已经可以进行动态按钮的创建下面我们来讲如何对新建的按钮添加对应的事件方法btn_click(): private void btn_click(object sender, System.EventArgs e) { Button b1 = (Button)sender;//

完成以上步骤就已经可以进行动态按钮的创建

下面我们来讲如何对新建的按钮添加对应的事件方法btn_click():

   private void btn_click(object sender, System.EventArgs e)
   {
    Button b1 = (Button)sender;//将触发此事件的对象转换为该Button对象
  
     MessageBox.Show(""+b1.Name);
   }

至此就已经完成了动态创建按钮和事件

asp.net为控件动态添加事件

实现的功能是在网页上的Panel中动态添加一个Button,并为这个Button写一个单击事件。

动态添加控件的事件,语句:

Control.Command += new CommandEventHandler(this.EventFun);

具体的代码请看下面:

需要特别注意的是:

添加控件和给控件加事件时绝对不能放到 if(!IsPostback){}里面,那样的话,点击一次后控件会消失,而且事件也不

会执行。

protected void Page_Load(object sender, EventArgs e)
    {
       //将输入字符串分析为System.Web.UI.Control对象,b为传进去的值
        Control c = ParseControl("<asp:Button Text = '按我' ID = 'myButton' commandargument = 'b' runat = 'server' />");

        //将控件添加大Panel中
        this.Panel1.Controls.Add(c);

        //查找页面名为myButton的控件
        Button Button = (Button)Page.FindControl("myButton");

        //添加事件On_Button
        Button.Command += new CommandEventHandler(this.On_Button);
       
    }

    //CommandEventArgs为command事件提供数据
    protected void On_Button(Object sender,CommandEventArgs e)
    {
        Response.Write("<script language = 'javascript' type = 'text/javascript'>alert('" + e.CommandArgument.ToString() + "');</script>");
    }

上一页  1 2 3 4  下一页

Tags:动态 生成 控件

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接