2015-04-01 223 views
8

当创建一个带有AllowsTransparency="True" WindowStyle="None"的WPF窗口并通过this.WindowState = WindowState.Maximized;最大化时,窗口比我的屏幕大。WPF最大化窗口比屏幕大

当设置AllowTransparency="False"我有我的窗口周围的边框,但窗口不会比我的屏幕更大。
在我的情况下,我有一个1920x1080的屏幕,窗口变为1934x1094。
在我的1280x1024屏幕上,窗口将变为1294x1038。
无论是否启用AllowTransparency,Window都将变得与此一样大,然而禁用它后它仍能正常工作。

在最大化doesen't工作之前设置AllowTransparency并引发InvalidOperationException。

如何获得一个WPF窗口没有Windows风格的边框,但尚未最大限度地正确?

回答

1

这似乎是一个很常见的问题。看起来你必须将你的高度和宽度绑定到屏幕的实际高度/宽度,如此StackOverflow文章所述:

Borderless window application takes up more space than my screen resolution

我希望能够解决您面临的问题。

+1

这doesen't解决我的问题:1。 回答: 代码只是工作,如果你有一个显示器......此外,它doesen't手柄最大化 2回答: 该窗口不再是太大,但它放错了位置(有点太离谱了) – XoMEX 2015-04-01 12:58:08

0

设置你的这个属性窗口。

MinHeight="100" 
    MinWidth="100" 
    Height="auto" 
    Width="auto" 

希望这将工作