我想要製作加載全屏的WPF應用程序,並在全屏和窗口之間切換F11鍵。WPF全屏切換仍顯示桌面的一部分
使用以下代碼,它將首先以全屏模式正確顯示在屏幕上。切換將其拉回到常規窗口。
然後隨後切換它差不多進入全屏模式,但似乎向上移動了大約10個像素,所以任務欄的一半是可見的。我可以在一個空的主窗口的新WPF項目中重現這一點。
public partial class MainWindow : Window {
public MainWindow() {
InitializeComponent();
this.WindowState = WindowState.Maximized;
this.WindowStyle = WindowStyle.None;
this.ResizeMode = ResizeMode.NoResize;
this.Topmost = true;
this.PreviewKeyDown +=
(s, e) => {
if (e.Key == Key.F11) {
if (this.WindowStyle == WindowStyle.None) {
this.WindowState = WindowState.Normal;
this.WindowStyle = WindowStyle.SingleBorderWindow;
this.ResizeMode = ResizeMode.CanResize;
this.Topmost = false;
} else {
this.WindowState = WindowState.Maximized;
this.WindowStyle = WindowStyle.None;
this.ResizeMode = ResizeMode.NoResize;
this.Topmost = true;
}
}
};
}
}
這是一個框架中的錯誤?我無法想象到現在它會被忽視,但我不知道我做錯了什麼。這些是應該做這項工作的財產,他們幾乎工作,但不完全。我試過與其他Window
設置搞亂,但沒有運氣。有任何想法嗎?
我想你的代碼之前設置
WindowStyle
,它很好地工作,形成了我,用一個簡單的形式,並在其上沒有成分... – LPs