在C#中,如何从对象中获取控件的名称?

时间:2014-12-13 15:49:19

标签: c# winforms

我在表单上有几个按钮,点击其中任何一个指向一个 EventHandler方法。

当我在EventHandler方法中时,我有发送者对象,它是引发事件的控件。

如何从发件人对象中获取控件的名称(例如“Button1”)?

谢谢

3 个答案:

答案 0 :(得分:1)

发件人对象是对象的类型,如果你想使用发送者对象的任何属性,你需要输入你想要的对象,在事件处理程序中添加它,

String name = null;
if(sender is Button)
  name = (sender as Button).Name;

答案 1 :(得分:1)

所以,假设你有:

private void button1_Click(object sender, EventArgs e)
{

}

把它放在那里你可以得到它:

MessageBox.Show(((Button)sender).Name);

您正在做的是将发件人对象转换为按钮并获取Name属性

此外,对于C#语言的新手,您可以使用安全导航操作符:

MessageBox.Show((sender as Button)?.Name);

答案 2 :(得分:0)

将其投射到Control,然后您就可以阅读Name属性。