动态创建按钮及处理OnClick事件

最普通的动态创建铵钮方法,并为此铵钮处理它的OnClick的事件。为了演示效果更佳,在aspx使用Ajax,

View Code
<asp:ScriptManager ID="ScriptManager1" runat="server">
    
</asp:ScriptManager>
    
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
        
<ContentTemplate>
            
<asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
        
</ContentTemplate>
    
</asp:UpdatePanel>

 

.aspx.cs,程序中有详注释:

View Code
 protected void Page_Load(object sender, EventArgs e)
    {
        GenerateButton();
    }

    
private void GenerateButton()
    {
        
//new 一个Button控件。
        Button button = new Button();

        
//为此button控件添加属性ID和ID的值为Button1。
        button.Attributes.Add("ID""Button1");

        
//为此button控件添加属性,设button为服务器控件。
        button.Attributes.Add("runat""server");

        
//使用Text属性来指定或确定在Button控件中显示的标题
        button.Text = "Click me";

        
//为button控件添加Click事件。
        button.Click += new EventHandler(this.Button1_Click);

        
//把button控件load到aspx的PlaceHolder控件里。
        this.PlaceHolder1.Controls.Add(button);
    }

    
//实现Button1_Click事件
    private void Button1_Click(object sender, EventArgs e)
    {
        Insus.NET.InsusJsUtility js 
= new Insus.NET.InsusJsUtility();
        js.JsAlert(
"'Click me' 铵钮被点击,事件已经产生。");
    }


网页在运行时,会显示一个Click me的铵钮,点击铵钮后:

 

 

 于2013-05-29 14:00补充以下VB.NET代码:

Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
        GenerateButton()
    End Sub

    Private Sub GenerateButton()
        'new 一个Button控件。
        Dim button As New Button()

        '为此button控件添加属性ID和ID的值为Button1。
        button.Attributes.Add("ID", "Button1")

        '为此button控件添加属性,设button为服务器控件。
        button.Attributes.Add("runat", "server")

        '使用Text属性来指定或确定在Button控件中显示的标题
        button.Text = "Click me"

        '为button控件添加Click事件。
        AddHandler button.Click, AddressOf Me.Button1_Click

        '把button控件load到aspx的PlaceHolder控件里。
        Me.PlaceHolder1.Controls.Add(button)

    End Sub

    '实现Button1_Click事件
    Private Sub Button1_Click(sender As Object, e As EventArgs)
        Dim js As New Insus.NET.InsusJsUtility()
        js.JsAlert("'Click me' 铵钮被点击,事件已经产生。")
    End Sub
View Code


 

posted @ 2011-05-31 15:00  Insus.NET  阅读(3237)  评论(0编辑  收藏  举报