动态创建的ImageButton [英] Dynamically create an ImageButton

查看:189
本文介绍了动态创建的ImageButton的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图动态声明的ImageButton。

我宣布它并分配一个ID和形象,如下所示:

 的ImageButton BTN =新的ImageButton();
btn.ImageUrl =IMG / Delete.png
btn.ID = OA1 [I] +_+ I;
btn.OnClick =的someMethod;

但是,当我尝试分配一个onclick处理程序,它会引发以下异常按钮:

  System.Web.UI.WebControls.ImageButton.OnClick无法访问,由于保护级别


解决方案

看看这个回答,它是动态控制和事件相关的

由于乔恩评论说你不能一个字符串添加到该事件,在这种情况下,你需要添加一个事件的处理:

 保护无效Page_Init(对象发件人,EventArgs的发送)
    {
        VAR I =新的ImageButton();
        i.Click + =新ImageClickEventHandler(i_Click);
        this.myPanel.Controls.Add(ⅰ);
    }    无效i_Click(对象发件人,ImageClickEventArgs E)
    {
        // 做一点事
    }

Alternativeley

 保护无效Page_Init(对象发件人,EventArgs的发送)
    {
        VAR I =新的ImageButton();
        i.Click + =(来源参数)=>
        {
            // 做一点事
        };
        this.myPanel.Controls.Add(ⅰ);
    }

I’m trying to dynamically declare an ImageButton.

I declare it and assign an ID and Image to it as follows:

ImageButton btn = new ImageButton();
btn.ImageUrl = "img/Delete.png";
btn.ID = oa1[i] + "_" + i;
btn.OnClick = "someMethod";

But when I try to assign an OnClick handler for the button it throws the following exception:

System.Web.UI.WebControls.ImageButton.OnClick is inaccessible due to protection level

解决方案

Take a look at this answer, it is related with dynamic controls and events

As Jon commented you cannot add a string to the event, in this case you need to add a handler for the event:

    protected void Page_Init(object sender, EventArgs e)
    {
        var i = new ImageButton();
        i.Click += new ImageClickEventHandler(i_Click);
        this.myPanel.Controls.Add(i);
    }

    void i_Click(object sender, ImageClickEventArgs e)
    {
        // do something
    }

Alternativeley

    protected void Page_Init(object sender, EventArgs e)
    {
        var i = new ImageButton();
        i.Click += (source, args) =>
        {
            // do something
        };
        this.myPanel.Controls.Add(i);
    }

这篇关于动态创建的ImageButton的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆