gpt4 book ai didi

c# - 从动态创建的事件处理程序访问控制属性

转载 作者:行者123 更新时间:2023-12-02 09:22:33 25 4
gpt4 key购买 nike

我正在开发一个 C# WinForms 应用程序。在 FormLoad 事件中,我动态创建并向表单添加 100 个不带文本的按钮,但名称如 button1button2 等。此外,创建这些按钮后,我动态链接 ButtonClick 事件的唯一事件处理程序。如何从事件处理程序中访问按钮的属性(更具体地说是按钮名称)?如果我使用 this.Name,我会得到表单的名称,而不是按钮的名称。

稍后编辑:(对于那些可能想在这里寻找解决方案的人)

private void function1()
{
Button a = new Button();

a.Name = "button" + (i * j).ToString();
a.Click += new EventHandler(OnFieldButtonClicked);
}

private void OnFieldButtonClicked(object sender, EventArgs e)
{
Button button = (Button)sender;
MessageBox.Show(button.Name);
}

最佳答案

sender 参数是事件处理程序,封装了触发事件的对象的实例:

Button button = (Button) sender;
String text = button.Text;

关于c# - 从动态创建的事件处理程序访问控制属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6469690/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com