C# 使用luna或classic时,如何删除WPF窗口的边框?

C# 使用luna或classic时,如何删除WPF窗口的边框?,c#,.net,wpf,windows,C#,.net,Wpf,Windows,当我用WindowStyle=“None”显示WPF窗口时,使用areo时看起来很棒 然而,当我使用luna或classic时,它会显示大约5像素宽的难看的灰色边框 当然,如果我设置了ResizeMode=“NoResize”,这个边框就会消失,但我希望窗口可以调整大小(ResizeMode=“CanResize”) 其他非WPF应用程序(live mail、ie、firefox等)不显示此灰色边框,但仍可以调整大小 是否有一种方法可以在仍可调整大小的情况下删除此边框 尝试在窗口上设置为True

当我用
WindowStyle=“None”
显示WPF窗口时,使用areo时看起来很棒

然而,当我使用luna或classic时,它会显示大约5像素宽的难看的灰色边框

当然,如果我设置了
ResizeMode=“NoResize”
,这个边框就会消失,但我希望窗口可以调整大小(
ResizeMode=“CanResize”

其他非WPF应用程序(live mail、ie、firefox等)不显示此灰色边框,但仍可以调整大小

是否有一种方法可以在仍可调整大小的情况下删除此边框

尝试在窗口上设置为True。

我正在使用。这是我的窗口声明(缩写):


我找到了一个更好的答案。无需乱用ResizeMode。不需要互操作调用。无需设置AllowsTransparency,这可能会产生副作用

<WindowChrome.WindowChrome>
 <WindowChrome CaptionHeight="0" ResizeBorderThickness="5" />
</WindowChrome.WindowChrome>

我从这个帖子中得到了这个答案:


我把它转发给登陆谷歌的人。

这看起来是一个很酷的项目。我以前从未听说过。这个项目很酷,但也有一些问题,比如最大化时窗口会覆盖任务栏。使用Microsoft WPF外壳集成库,而不是使用第三方库,这永远不是解决方案。这不是答案,因为AllowTransparency=true会禁用调整大小。是的,您会丢失从窗口边缘调整大小的功能,但仍然可以使用夹点调整大小。您可以自己处理wnidow边缘的大小调整,如果您感兴趣,我可以发布代码。@JohnMyczek当AllowTransparency设置为True时,您可以发布大小调整窗口的代码吗?最佳答案!有winformshost支持
<WindowChrome.WindowChrome>
 <WindowChrome CaptionHeight="0" ResizeBorderThickness="5" />
</WindowChrome.WindowChrome>