2

如果 Windows 10 任务栏的自动隐藏是开启的,那么当应用程序运行时将覆盖它,并且无法使用鼠标光标到达任务栏。有什么办法可以解决这个问题?

mc:Ignorable="d" WindowState="Maximized" WindowStyle="None" ResizeMode="NoResize" WindowStartupLocation="CenterScreen">
4

1 回答 1

1

这是 WPF 中 WindowChrome/WindowStyle="None" 功能的最大问题之一。我不知道处理它的 100% 完整证明方式。我能在网上找到的最好方法是使用一些互操作来手动处理 Window 的 WndProc 函数并拦截 WM_GETMINMAXINFO 消息。此消息控制最大化窗口的尺寸。使用此方法,您可以从最大化尺寸中减去一两个像素,以便任务栏可以戳穿。

由于任务栏可以定位在屏幕的不同角落,您可以使用更多的互操作来检测任务栏的当前位置。就像我说的,这种方法并不完美。有时任务栏会卡在窗口后面。在有人发布更好的方法之前,这是我能找到的最好的方法。这是我在 GitHub 上找到的代码示例(不是我的):

https://gist.github.com/MortenChristiansen/6463580

于 2020-05-01T09:48:12.267 回答