我希望事件仅在双击按钮时发生,而不是在单击按钮时发生事件。遗憾的是,双击事件没有出现在 IDE 的事件列表中。
有人知道解决这个问题的好方法吗?谢谢你!
不,标准按钮不会对双击做出反应。请参阅文档按钮.双击 http://msdn.microsoft.com/en-us/library/system.windows.forms.button.doubleclick.aspx事件。它不会对双击做出反应,因为在 Windows 中按钮总是对单击做出反应,但从不对双击作出反应。
你讨厌你的用户吗?因为您将创建一个与系统中任何其他按钮的行为不同的按钮,而某些用户永远不会弄清楚这一点。
也就是说,您必须创建一个派生自的单独控件Button
事件到此(因为SetStyle http://msdn.microsoft.com/en-us/library/system.windows.forms.control.setstyle.aspx是一个受保护的方法)
public class DoubleClickButton : Button
{
public DoubleClickButton()
{
SetStyle(ControlStyles.StandardClick | ControlStyles.StandardDoubleClick, true);
}
}
然后你必须添加DoubleClick
在代码中手动添加事件处理程序,因为它仍然不会显示在 IDE 中:
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
doubleClickButton1.DoubleClick += new EventHandler(doubleClickButton1_DoubleClick);
}
void doubleClickButton1_DoubleClick(object sender, EventArgs e) {
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)