我有一个班级
MyWindows : XtraUserControl,ISmartPartInfoProvider
我想在按下退出键时关闭它。
我使用Microsoft.Practices.CompositeUI.SmartParts MyWindows显示如下窗口: MyWindows temp = new MyWindows(); myWorkspace.Show(温度);
我尝试以下方法:
在构造函数
中PreviewKeyDown += OnKeyDownP;
KeyDown += OnKeyDown;
使用方法:
private void OnKeyDownP(object sender, PreviewKeyDownEventArgs e)
{
if (e.KeyData == Keys.Escape)
{
this.Dispose();
}
}
private void OnKeyDown(object sender, KeyEventArgs e)
{
if (e.KeyData == Keys.Escape)
{
this.Dispose();
}
}
但是没有任何事件发生。
我错过了什么吗?
修改 这篇文章对我有用: Close a XtraUserControl on esc key pressed
答案 0 :(得分:0)
是。您应该将KeyPreview
的{{1}}属性设置为Form
。你应该使用你的true
事件来抓住按键。