1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > winform自定义的button右键点击事件不生效

winform自定义的button右键点击事件不生效

时间:2018-10-30 05:25:29

相关推荐

winform自定义的button右键点击事件不生效

项目场景:

C#中在FlowLayoutPanel控件中添加自定义的控件PanelEx,在PanelEx中自定义添加ButtonExt控件

问题描述

自定义控件右键点击事件不生效

代码:

ButtonExt button;button = new ButtonExt();//button.Click += new System.EventHandler(this.button_Click);button.MouseDown+= new MouseEventHandler(this.button_Click);PanelEx panelConter = new PanelEx();panelConter.Tag = tag;panelConter.Width = 135;panelConter.Height = 130;panelConter.Controls.Add(button);panelConter.Start_path = url_path;this.flowLayoutPanel_Firms.Controls.Add(panelConter);

原因分析:

使用button.Click += new System.EventHandler(this.button_Click)后左键点击都能正常识别和触发,但右键点击一直无法生效。

初步怀疑是添加了两层控件的原因,导致button的右键点击失效。但实测后并不是,查找了下资料发现了点击事件可以通过Click事件和MouseDown委托的方法,就打算换过用MouseDown委托,果然解决了问题

总结:

按下鼠标键,立马会触发的是MouseDown事件。鼠标松开的时候会依次触发MouseClick和MouseUp事件。所以从响应效率上

MouseDown要优于MouseClick

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。