Uwp如何使splitview背景丙烯酸模糊

时间:2017-12-24 09:39:07

标签: uwp fluent-design

我正在学习uwp开发,我正在努力使我的splitview窗格具有acrylicbrush。据我所知,丙烯酸刷有两种类型。 WindowAcrylic和Element丙烯酸。在默认的Windows 10音乐应用程序(Groove)中,splitview菜单在紧凑模式下具有WindowsAcrylic,在打开模式下具有ElementAcrylic。在一些教程中,他们说当你设置WindowsAcrylicBrush时,它会在打开时自动转向elementAcrylicBrush,但在我的应用程序中不会像这样工作。

这是我在紧凑模式下的splitview Compact 并打开模式 Opened 但我想这样做 GrooveCompact GrooveOpened

1 个答案:

答案 0 :(得分:0)

查看有关NavigationView的不同显示模式的说明here

您有MinimalCompactExpanded。根据显示模式的当前状态,背景将以不同的方式绘制,使用背景丙烯酸或应用内丙烯酸。

对于您的情况,您可能尚未达到定义的阈值,因此您的应用从“展开”更改为“紧凑”,因此我们仍然可以看到并排显示的窗格内容和背景涂有背景丙烯酸。

如果您想要为每个导航视图定义不同的窗口宽度,导航会进入不同的显示模式(适用于您的情况,您可能希望您的应用程序以比当前更高的最小宽度进入紧凑模式),签出以下属性:CompactModeThresholdWidth ExpandedModeThresholdWidthhere

Background AcrylicIn-App Acrylic定义Acrylic背景资源,覆盖以下NavigationView的背景资源:

<media:AcrylicBrush x:Key="NavigationViewExpandedPaneBackground" BackgroundSource="HostBackdrop" TintColor="#FF3333FF" TintOpacity="0.6" FallbackColor="#FF3333FF" />
<media:AcrylicBrush x:Key="NavigationViewDefaultPaneBackground" BackgroundSource="Backdrop" TintColor="#FF3333FF" TintOpacity="0.6" FallbackColor="#FF3333FF" />

使用此功能,您可以使用自己的自定义背景资源,并且不限于使用通用主题资源(LightDark,...中的默认背景丙烯酸和应用内丙烯酸。 )。

根据Windows Width,您可以在此gif上看到应用从背景丙烯酸和应用内丙烯酸切换:

enter image description here