我正在学习uwp开发,我正在努力使我的splitview窗格具有acrylicbrush。据我所知,丙烯酸刷有两种类型。 WindowAcrylic和Element丙烯酸。在默认的Windows 10音乐应用程序(Groove)中,splitview菜单在紧凑模式下具有WindowsAcrylic,在打开模式下具有ElementAcrylic。在一些教程中,他们说当你设置WindowsAcrylicBrush时,它会在打开时自动转向elementAcrylicBrush,但在我的应用程序中不会像这样工作。
答案 0 :(得分:0)
查看有关NavigationView的不同显示模式的说明here。
您有Minimal
,Compact
和Expanded
。根据显示模式的当前状态,背景将以不同的方式绘制,使用背景丙烯酸或应用内丙烯酸。
对于您的情况,您可能尚未达到定义的阈值,因此您的应用从“展开”更改为“紧凑”,因此我们仍然可以看到并排显示的窗格内容和背景涂有背景丙烯酸。
如果您想要为每个导航视图定义不同的窗口宽度,导航会进入不同的显示模式(适用于您的情况,您可能希望您的应用程序以比当前更高的最小宽度进入紧凑模式),签出以下属性:CompactModeThresholdWidth
ExpandedModeThresholdWidth
,here
为Background Acrylic
和In-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" />
使用此功能,您可以使用自己的自定义背景资源,并且不限于使用通用主题资源(Light
,Dark
,...中的默认背景丙烯酸和应用内丙烯酸。 )。
根据Windows Width
,您可以在此gif上看到应用从背景丙烯酸和应用内丙烯酸切换: