我正在创建一个没有任何Toolbars
的Winforms应用程序。主窗口的FormBorderStyle
设置为Sizable
,ControlBox
设置为true
。每次我按 Alt 然后使用 Up 或 Down (不是 Alt + Up 或 Alt + 向下)控制框显示在我的应用程序的左上角。这很烦人,因为我的网格中有 Alt + R 等快捷方式,如果用户只按下并释放 Alt 然后向上转到控制框显示的上一行。
我该如何覆盖?
答案 0 :(得分:2)
@Ken:我尝试了你的代码,由于某些原因,焦点仍然是ControlBox
。
调整了一下,它完全符合我的需要。
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if (keyData == (Keys.RButton | Keys.ShiftKey | Keys.Alt))
{ return true; }
return base.ProcessCmdKey(ref msg, keyData);
}
答案 1 :(得分:0)
您是否尝试将ShowIcon
设为false
?
答案 2 :(得分:0)
这个怎么样:
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if (keyData == Keys.Alt)
{
keyData = Keys.None;
}
return base.ProcessCmdKey(ref msg, keyData);
}