读书人

一个Panel上边添加了多个控件Panel的

发布时间: 2013-09-05 16:02:07 作者: rapoo

一个Panel上面添加了多个控件,Panel的Click事件被控件给挡住了,求完美解决方案
C# Winform开发
在一个Panel上面添加了多个控件,Panel的Click事件被控件给挡住了。
各位大神,有没有什么完美的解决方案? 控件 winform c# panel 事件
[解决办法]
所有控件的click事件执行panel的click事件
[解决办法]
一个 Panel 上写什么事件啊,这样的操作太不明显了。
实在要用就用 Padding 留点空间出来吧。
[解决办法]
所有控件的click事件执行panel的click事件。。。

如果每次panel上面的控件事件触发完成后,再触发panel的click事件这个倒也好解决。可以按照1楼方法。

如果只是单纯的想执行panel上的click事件,怎么去判断操作者是想点击panel还是想点击panel上的其它控件?


[解决办法]
所有控件执行一个控件的click时间
在click时间里面用
switch (控件名称)
{
case "控件名称":
//处理事件
break;
}
[解决办法]
最好还是调整控件,留点空间出来
[解决办法]

引用:
所有控件的click事件执行panel的click事件

+1
[解决办法]
引用:
感谢给位,换一种说法吧
我对Panel进行扩展,在上面添加一系列的控件,作为一个自定义控件来用
就像QQ的好友一样,上面添加一个pictureBox显示头像,添加两个label显示昵称和签名
当鼠标点击或者经过这个自定义控件的时候,要触发一些事件

我曾经试着创建系统自带的自定义控件Component来实现,但发现这个控件的属性和方法很少
那么各位有什么更好的办法来实现这个功能么?谢谢!


经过的话应该不会被遮挡吧 但是点击就不好说了
------解决方案--------------------


重新设计你的软件
这个的问题说明你的设计本身就不合理
[解决办法]

引用:
Quote: 引用:

重新设计你的软件
这个的问题说明你的设计本身就不合理
你觉得怎样才合理?


怎么才合理 问你自己
不要问我

如果一个UI很可能被其他的UI挡住 那么就绝对不应该让它来跟用户交互
这是UI设计的最基本的原则之一
[解决办法]
直接GDI绘图吧,你这样控件太多了浪费资源

读书人网 >C#

热点推荐