动态控制及其事件

发布于 2024-08-11 07:22:34 字数 468 浏览 5 评论 0原文

我们正在为每行的网格内创建动态文本框和按钮。现在我们要为每个按钮创建单击事件。使用 ITemplate 在网格内创建按钮。

代码:

ImageButton imbtnAdd = new ImageButton();
imbtnAdd.ID = "imbtn" + columnName;
imbtnAdd.ImageUrl = "btn_add_icon.gif";
imbtnAdd.Width = 20;                    
container.Controls.Add(imbtnAdd);

错误:

我使用了 imbtnAdd.Click += new ImageClickEventHandler(imbtnAdd_Click); 但它显示错误消息

imbtnAdd_Click 不存在

We are creating dynamic text boxes and buttons inside a grid for each row. Now we want to create click event for each button. To create button inside the grid in using ITemplate.

Code:

ImageButton imbtnAdd = new ImageButton();
imbtnAdd.ID = "imbtn" + columnName;
imbtnAdd.ImageUrl = "btn_add_icon.gif";
imbtnAdd.Width = 20;                    
container.Controls.Add(imbtnAdd);

Error:

I have used imbtnAdd.Click += new ImageClickEventHandler(imbtnAdd_Click); but it shows an error message

imbtnAdd_Click does not exist

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

追我者格杀勿论 2024-08-18 07:22:34
ImageButton imbtnAdd = new ImageButton();
imbtnAdd.ID = "imbtn" + columnName;
imbtnAdd.ImageUrl = "btn_add_icon.gif";
imbtnAdd.Width = 20;             

imbtnAdd.Click += imbtnAdd_Click;

container.Controls.Add(imbtnAdd);

// ...

private void imbtnAdd_Click(object sender, EventArgs e)
{
    // handle event
}
ImageButton imbtnAdd = new ImageButton();
imbtnAdd.ID = "imbtn" + columnName;
imbtnAdd.ImageUrl = "btn_add_icon.gif";
imbtnAdd.Width = 20;             

imbtnAdd.Click += imbtnAdd_Click;

container.Controls.Add(imbtnAdd);

// ...

private void imbtnAdd_Click(object sender, EventArgs e)
{
    // handle event
}
以酷 2024-08-18 07:22:34

杰里斯塔的回答是正确的。

不过,如果您想为所有按钮实现不同的处理程序并且您使用的是 .Net 3.0 或更高版本,则可以使用 lambda:

imbtnAdd.Click += (object sender, EventArgs e) =>
{
    // Code handling code goes here...
};

Jrista's answer is correct.

Although, if you want to implement different handlers for all the buttons and you are using .Net 3.0 or above, you can use lambdas:

imbtnAdd.Click += (object sender, EventArgs e) =>
{
    // Code handling code goes here...
};
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文