Shi*_*mmy 32 wpf rounded-corners
我试图使窗口(WPF)的角落圆形,它不起作用,我试图使窗口本身透明,并添加圆角的内部边框,它不起作用.
有任何想法吗?
Cod*_*313 33
你需要将WindowStyle设置为WindowStyle.None,它将删除chrome,然后你可以允许透明度是Window元素的属性,并将背景颜色设置为透明.所有这些都可以作为窗口标记的属性来完成.
WindowStyle="None"
AllowsTransparency="True"
Background="Transparent"
Run Code Online (Sandbox Code Playgroud)
要使角变圆,请使用边框并设置cornerRadius属性
我通过Windows.Clip解决了这个问题。
<Window ....
<Window.Clip>
<RectangleGeometry Rect="0,0,857,483" RadiusX="25" RadiusY="25"/>
</Window.Clip>
</Window>
Run Code Online (Sandbox Code Playgroud)
但我认为最好的方法是使用 WindowChrome。您可以相对轻松地解决调整大小问题。我还没有完成对这项技术的理解。所以我现在无法发布工作解决方案。目前这里有一个似乎有用的链接。 MS 文档 ChromeClass
不要使用AllowsTransparency,它速度慢且有问题,请查看此链接,查找“没有 Aero \xe2\x80\x93 的 Office 2007 或者,你要对一切负责”部分:
\n\nhttps://blogs.msdn.microsoft.com/wpfsdk/2008/09/08/custom-window-chrome-in-wpf/
\n\n编辑:这篇文章中的一些技术是特定于 Vista 的,但“没有 Aero 的 Office 2007”部分适用于 XP(实际上描述了为 Vista 编写的软件必须在 XP 上使用)。
\n