繁体   English   中英

确定用户控制调用者

[英]determine user-control caller

我创建了一个用户控件,它可以是一个按钮。 在我的表格上,我放置了多个这样的按钮。 我的问题是:我如何在我的用户控制类中确定谁给我打电话(即什么按钮)?

你的按钮类应该有一个公共的Clicked事件,就像一个普通的WinForms按钮:

 class MyButton
 {
     // this should be fired when a button is clicked
     public event EventHandler Clicked;
 }

如果您有一个用于多个按钮的事件处理程序,例如:

 button1.Clicked += new EventHandler(button_Clicked);
 button2.Clicked += new EventHandler(button_Clicked);
 button3.Clicked += new EventHandler(button_Clicked);

您可以检查处理程序中的sender参数,以查看触发事件的控件:

 private void button_Clicked(object sender, EventArgs e)
 {
     MyButton button = sender as MyButton;
     MessageBox.Show("You clicked on " + button.Text");
 }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM