在C# WinForm应用程序中如何获取当前窗体中被激发的控件名称?

来源:百度知道 编辑:UC知道 时间:2024/06/16 11:56:27
在C# WinForm应用程序中我想获取当前被点击的控件的名称,用于判定当前是点击了那个控件。这个问题怎么实现?
不是说要获取是激活了那个窗体,而是要获取一个窗体中是点击了那个控件(窗体中包含很多控件),我自己是这样想的:
定义了一个全局变量 public string ActivedName;

然后通过这样实现:ActivedName=this.ActiveControl.Name.ToString();
为什么不对啊!!

给每个控件加click事件.事件方法里写ActivedName="各个控件的名称"

简单:

窗体的Activated事件中 获得当前窗体的name 就可以了

这个事件应该不用说了 事件属性里找到 直接双击
在这个函数里写
messagebox.show(this.name.tostring());就可以了 或者写成一个公共方法.

每个事件都有有个Sender 参数,通过它即可判断,前提是你要能区分出那个类型的控件,比如:都是Button按钮,你可以这样做
Button source=(Button as sender);
if(source!==null)
{
//此时说明你点击的是按钮,具体那个按钮,要根据你设计时的需求来,比如你的按钮中的Tag标识类是那个按钮,那你就可以根据Tag属性来进行相关的判断操作

}