使用代码而不是XAML更改NavigationView TintColor

时间:2018-09-18 12:58:57

标签: c# uwp uwp-xaml

我想知道是否可以在代码中更改NavigationView的颜色。

当前,我在App.xaml页面中具有XAML覆盖,它覆盖了NavigationView的色彩。

<AcrylicBrush x:Key="NavigationViewDefaultPaneBackground"
              BackgroundSource="HostBackdrop" TintColor="Red" TintOpacity=".3"/>

<AcrylicBrush x:Key="NavigationViewExpandedPaneBackground"
              BackgroundSource="HostBackdrop" TintColor="Red" TintOpacity=".3"/>

我想知道是否有可能在代码中实现类似的目的。我正在寻找一种编辑TintColor的方法。

此操作的最终目的是允许ColorPicker更改TintColor。

1 个答案:

答案 0 :(得分:1)

将窗格背景设置为透明。

<AcrylicBrush x:Key="NavigationViewDefaultPaneBackground"
           TintColor="Transparent" TintOpacity="0" Opacity="0"/>

此后,窗格背景对其下方的所有内容将完全透明。因此,现在我们可以更改 NavigationView 本身的背景,并且它也会在窗格中反射。

因此在您要更改窗格背景的代码后面,只需设置 NavView.Background

的背景