如题:
是这样的,在我的程序中,多种控件共享一个事件的执行过程.
例如:
点击一个Button,会执行 ABC(object sender, MouseEventArgs e);
同时,点击一个Label也会执行 ABC(object sender, MouseEventArgs e);
当然,还有其他的按钮,都会执行同一个事件 ABC(object sender, MouseEventArgs e);
问题:
我如何判断这是一个按钮还是一个其他的控件啊,
因为如果是一个Button,我要显示 ((button)sender)).text
是一个Label,我要显示 ((Label)sender)).text
我不想每次都用IF来判断,能不能直接使用 Sender的一个属性然后就可以直接调用 .text 属性了啊.
谢谢,我会一直在线, 很急的.谢谢
是这样的,在我的程序中,多种控件共享一个事件的执行过程.
例如:
点击一个Button,会执行 ABC(object sender, MouseEventArgs e);
同时,点击一个Label也会执行 ABC(object sender, MouseEventArgs e);
当然,还有其他的按钮,都会执行同一个事件 ABC(object sender, MouseEventArgs e);
问题:
我如何判断这是一个按钮还是一个其他的控件啊,
因为如果是一个Button,我要显示 ((button)sender)).text
是一个Label,我要显示 ((Label)sender)).text
我不想每次都用IF来判断,能不能直接使用 Sender的一个属性然后就可以直接调用 .text 属性了啊.
谢谢,我会一直在线, 很急的.谢谢
解决方案 »
- 小游戏 - 字符串的长度
- C#自定义属性如何定义选择多选择项。
- 关于DataSet更新数据库的问题,望指点~
- 关于DataGrid 隐藏某列和设置列宽 (紧急再加急 )
- .net网站怎样发布呀?请教高手,急的很呀、、、、、
- IBM DB2 OLE DB Provider 的补丁在什么地方下载呀,大家知道的,给个详细的地址吧,谢谢!
- SqlDataSource查询如何增加另一页面发回的id号,从而过滤一些数据
- 小女子在此跪求C#报错“尝试读取或写入受保护的内存,这通常是指内存已经损坏”
- ★★★非常诚肯的请教一个难题★★★怎样为类写这样一个属性:可以返回类实例的名称( return classInstance.Name)??
- 不知道CL333+128M的配置能不能跑VS.net?
- RSA解密问题(不正确的数据)
- 一个关于winform的比较难的问题
{
}
else if(sender is Label)
{
}
Control c = sender as Control;
//然后直接使用Control的Text属性
c.Text = "";
{
}
因为button和label都是从Control派生出来,可这样用
Control c = sender as Control;
//然后直接使用Control的Text属性
c.Text = " ";
------------------zlc_168的方法好像可以了,我刚试了下,行了,呵,谢谢了啊.我很快会结帖.
if (Left >= 0)
((Control)(MyControl[k].thisControl)).Left = Left;
if (Top >= 0)
((Control)(MyControl[k].thisControl)).Top = Top;
if (Width >= 0)
Control)(MyControl[k].thisControl)).Width = Width;
if (Height >= 0)
((Control)(MyControl[k].thisControl)).Height = Height;谢谢大家
对于Label我只是做个例子罢了.
其实我要的鼠标的按下,抬起,这些,
其实你仔细看我的ABC(object sender, MouseEventArgs e);
后面的 E 的类型不是Click下用的.
哈,我的问题已经解决了,刚从代码中删除了一大堆的多余代码,现在代码简洁多了,哈