这是我想要它做的主要内容。
我在 Form Initializer 中创建了两个按钮,如下所示
public Form1()
{
InitializeComponent();
Button b1 = new Button();
b1.Parent = this;
b1.Name = "btnA";
b1.Text = "Button A";
b1.Click += new EventHandler(button_Click);
b1.Show();
Button b2 = new Button();
b2.Parent = this;
b2.Name = "btnB";
b2.Text = "Button B";
b2.Click += new EventHandler(button_Click);
b2.Show();
}
private void button_Click(object sender, EventArgs e)
{
MessageBox.Show("Button A or Button B was Clicked?");
}
我需要知道点击了哪个按钮,并且显然要操作被点击的那个按钮。
甚至可以更改被单击的按钮的文本。
我确信我们可以使用对象发送器来访问触发事件的按钮,但只是不知道如何使用发送器来操作正确的按钮。
任何指导或帮助将不胜感激
最佳答案
只需将 sender
转换为 Button
:
private void button_Click(object sender, EventArgs e)
{
Button clicked = (Button) sender;
MessageBox.Show("Button " + clicked.Name + " was Clicked.");
}
关于c# - 触发事件时单击了哪个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/886965/