📅  最后修改于: 2023-12-03 14:49:35.520000             🧑  作者: Mango
在 WPF 应用程序中,可以轻松实现全屏运行。但是默认情况下,应用程序会遮挡 Windows 任务栏,这可能会使用户感到困惑和不便。因此,我们需要一种方法来使 WPF 应用程序在全屏模式下正常工作,但在 Windows 任务栏上方。
这个问题可以通过以下步骤来解决:
// 设置窗口样式为 None
this.WindowStyle = WindowStyle.None;
// 设置窗口大小为屏幕大小
this.Width = System.Windows.SystemParameters.PrimaryScreenWidth;
this.Height = System.Windows.SystemParameters.PrimaryScreenHeight;
// 将窗口位置设置为屏幕左上角
this.Left = 0;
this.Top = 0;
// 设置窗口为最大化状态
this.WindowState = WindowState.Maximized;
// 获取屏幕工作区大小和任务栏大小
Rect workArea = SystemParameters.WorkArea;
Rect screenArea = SystemParameters.FullPrimaryScreenArea;
double taskbarHeight = screenArea.Height - workArea.Height;
// 将窗口工作区设置为屏幕大小减去任务栏高度
this.Width = screenArea.Width;
this.Height = screenArea.Height - taskbarHeight;
this.Left = 0;
this.Top = 0;
// 获取屏幕工作区大小和任务栏大小
Rect workArea = SystemParameters.WorkArea;
Rect screenArea = SystemParameters.FullPrimaryScreenArea;
double taskbarHeight = screenArea.Height - workArea.Height;
// 将窗口工作区设置为屏幕大小减去任务栏高度
this.Width = screenArea.Width;
this.Height = screenArea.Height - taskbarHeight;
this.Left = 0;
this.Top = 0;
通过以上步骤,我们可以使 WPF 应用程序在全屏模式下正常运行,并在 Windows 任务栏上方留出空间。这将提高用户体验,使应用程序更加友好和易用。