解决方案 »
- 坦克大战补遗-爆炸效果
- 请问这两个VS2008的版本号 哪个是最新的?
- 怎么判断即插即用的打印机存在?
- 为什么我运行的时候只能选择第一个Lessonid,选择其他的就会出错
- ***在.net的IDE环境上怎么增加一个新的menu。谢谢指导!
- 真的没有人帮我解决这个问题吗?显示时间与禁用关闭按钮 (已经困住我好几天了,急呀)
- C# 发送邮件,总是发不出去,IIS 自带的smtp是不是有问题? 还是我有代码有问题?
- 菜鸟问题,请问怎样使用NET框架打开光盘上的源程序
- 关于.net的一个小问题?请高手指教!
- Winform程序 多线程显示不正常,并且不能操作
- C# windows service 如何获取PC休眠和唤醒事件??
- 关于Gridview的操作,求好心人指点
我那控件是个自定义控件,要做的操作是自定义控件内部的事情,不适合让窗体来直接插手。目前是在OnHandleCreated里面挂接父容器的Click对象
protected override void OnHandleCreated(EventArgs e)
{
this.Parent.Click += new EventHandler(Parent_Click);
}不知道还有没有别的什么更好办法
如果像版主给的那种表现的话,没有其他办法的话,也可以用低级鼠标钩子,这个钩子要在自定义控件中,并且最好是使用后立即卸载了,我以前做一个扩展ComboBox的自定义控件时用过
有点事,来晚了顺便问一下,微软说ControlMouseUp 事件:在鼠标指针在控件上并释放鼠标键时发生。为啥在窗体点击鼠标,会触发UserControl1_MouseUp呢?谢谢
http://msdn.microsoft.com/zh-cn/library/system.windows.forms.control.capture.aspx当控件已捕获鼠标时,它接收鼠标输入,不论光标是否在其边框内。 通常只有在执行拖动操作时才捕获鼠标。
其他人的回答都没有说到要点。
明白你的代码了,不过,貌似没法用。因为,如果用鼠标点击了下拉框里面的项目,这个capture好像就被改了。再点击窗体就没作用了。
嗯,谢谢解答,我那个自定义控件里面都是自定义控件,里面的控件里面还是一个自定义控件,实在不想改代码了凑合用父容器的click吧再次感谢