我正在尝试获取WPF表单,以便在按下“enter”时最大化或最小化。但是,在调试时,它不起作用。
我可以这样写,这样它可以最小化但不能最大化,但是一旦执行一个动作就不能同时做到这两点。
如果有人能够把我推向正确的方向,我将不胜感激。
我目前正在使用“Enter”作为占位符,因为我还没有决定使用两个键的组合。我知道,对某些人来说可能很烦人,但此刻它对我有用。
另外,我正在尝试制作一个可以在后台运行的通用叠加程序,并在按下组合键时弹出。
private void MainWindow_KeyDown(object sender, KeyEventArgs e)
{
if (this.WindowState == WindowState.Minimized)
{
if (e.Key == Key.Enter)
{
this.WindowState = WindowState.Maximized;
}
}
}
private void MainWindow_KeyDown2(object sender, KeyEventArgs e)
{
if (this.WindowState == WindowState.Maximized)
{
if (e.Key == Key.Enter)
{
this.WindowState = WindowState.Minimized;
}
}
}
答案 0 :(得分:3)
尝试这样
private void MainWindow_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Enter)
{
if (this.WindowState == WindowState.Minimized)
{
this.WindowState = WindowState.Maximized;
}
else
{
this.WindowState = WindowState.Minimized;
}
}
}
答案 1 :(得分:1)
一旦最小化,应用程序将不会引发或响应KeyDown等事件。
但是,当它处于正常或最大化的视图状态时,它可以正常工作:
private void Form1_KeyUp(object sender, KeyEventArgs e)
{
if (e.Key == Key.Enter)
{
if (this.WindowState == WindowState.Normal)
{
this.WindowState = WindowState.Maximized;
}
else
{
this.WindowState = WindowState.Normal;
}
}
}