如何更改 NavigationViewItem 中的字体颜色(前景)?
How to change the font color (Foreground) in a NavigationViewItem?
你会看到我正在创建一个 UWP 应用程序,我正在使用 (NavigationView) 作为主菜单,在 NavigationViewItem 中我设法更改了背景、选择行等,但我无法更改字体颜色
样本截图
https://i.imgur.com/Oc9ffxG.png
我的xaml代码:
<NavigationView Grid.Row="1" x:Name="nvSample" PaneDisplayMode="Top" SelectionChanged="NvSample_SelectionChanged"
IsSettingsVisible="True" IsBackButtonVisible="Collapsed">
<NavigationView.MenuItems>
<NavigationViewItem Content="Menu Item1" Tag="Home_Page" HorizontalAlignment="Stretch" Height="38" Margin="12,0,0,0" VerticalAlignment="Stretch" />
<NavigationViewItem Content="Instalpage" Tag="Install_Page" />
<NavigationViewItem Content="Menu Item3" Tag="SamplePage3" />
<NavigationViewItem Content="Menu Item4" Tag="SamplePage4" />
</NavigationView.MenuItems>
<Frame x:Name="contentFrame" >
<Frame.ContentTransitions>
<TransitionCollection>
<NavigationThemeTransition>
<DrillInNavigationTransitionInfo />
</NavigationThemeTransition>
</TransitionCollection>
</Frame.ContentTransitions>
</Frame>
<NavigationView.PaneFooter>
<StackPanel Orientation="Horizontal">
<!--<NavigationViewItem Icon="SelectAll" Content="Select all" Foreground="White" />
<NavigationViewItem Icon="Help" Content="Help" />-->
</StackPanel>
</NavigationView.PaneFooter>
</NavigationView>
but I could not change the font color
您可以使用 TextBlock
控件作为 NavigationViewItem 的内容,然后可以为 TextBlock 控件设置 Foreground
属性。
请参考以下代码示例:
<NavigationView Grid.Row="1" x:Name="nvSample" PaneDisplayMode="Top"
IsSettingsVisible="True" IsBackButtonVisible="Collapsed">
<NavigationView.MenuItems>
<NavigationViewItem Tag="Home_Page" HorizontalAlignment="Stretch" Height="38" Margin="12,0,0,0" VerticalAlignment="Stretch">
<NavigationViewItem.Content>
<TextBlock Text="Menu Item1" Foreground="Red"></TextBlock>
</NavigationViewItem.Content>
</NavigationViewItem>
<NavigationViewItem Content="Instalpage" Tag="Install_Page" />
<NavigationViewItem Content="Menu Item3" Tag="SamplePage3" />
<NavigationViewItem Content="Menu Item4" Tag="SamplePage4" />
</NavigationView.MenuItems>
<Frame x:Name="contentFrame" >
<Frame.ContentTransitions>
<TransitionCollection>
<NavigationThemeTransition>
<DrillInNavigationTransitionInfo />
</NavigationThemeTransition>
</TransitionCollection>
</Frame.ContentTransitions>
</Frame>
<NavigationView.PaneFooter>
<StackPanel Orientation="Horizontal">
<!--<NavigationViewItem Icon="SelectAll" Content="Select all" Foreground="White" />
<NavigationViewItem Icon="Help" Content="Help" />-->
</StackPanel>
</NavigationView.PaneFooter>
</NavigationView>
NavigationViewItem 确实有一个名为 Foreground 的 属性,它对我有用
<NavigationView.MenuItems>
<NavigationViewItem Content="Menu Item1" Foreground="Black" Tag="Home_Page" Height="38" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" />
<NavigationViewItem Content="Instalpage" Foreground="Black" Tag="Install_Page" />
<NavigationViewItem Content="Menu Item3" Foreground="Black" Tag="SamplePage3" />
<NavigationViewItem Content="Menu Item4" Foreground="Black" Tag="SamplePage4" />
</NavigationView.MenuItems>
你会看到我正在创建一个 UWP 应用程序,我正在使用 (NavigationView) 作为主菜单,在 NavigationViewItem 中我设法更改了背景、选择行等,但我无法更改字体颜色
样本截图
https://i.imgur.com/Oc9ffxG.png
我的xaml代码:
<NavigationView Grid.Row="1" x:Name="nvSample" PaneDisplayMode="Top" SelectionChanged="NvSample_SelectionChanged"
IsSettingsVisible="True" IsBackButtonVisible="Collapsed">
<NavigationView.MenuItems>
<NavigationViewItem Content="Menu Item1" Tag="Home_Page" HorizontalAlignment="Stretch" Height="38" Margin="12,0,0,0" VerticalAlignment="Stretch" />
<NavigationViewItem Content="Instalpage" Tag="Install_Page" />
<NavigationViewItem Content="Menu Item3" Tag="SamplePage3" />
<NavigationViewItem Content="Menu Item4" Tag="SamplePage4" />
</NavigationView.MenuItems>
<Frame x:Name="contentFrame" >
<Frame.ContentTransitions>
<TransitionCollection>
<NavigationThemeTransition>
<DrillInNavigationTransitionInfo />
</NavigationThemeTransition>
</TransitionCollection>
</Frame.ContentTransitions>
</Frame>
<NavigationView.PaneFooter>
<StackPanel Orientation="Horizontal">
<!--<NavigationViewItem Icon="SelectAll" Content="Select all" Foreground="White" />
<NavigationViewItem Icon="Help" Content="Help" />-->
</StackPanel>
</NavigationView.PaneFooter>
</NavigationView>
but I could not change the font color
您可以使用 TextBlock
控件作为 NavigationViewItem 的内容,然后可以为 TextBlock 控件设置 Foreground
属性。
请参考以下代码示例:
<NavigationView Grid.Row="1" x:Name="nvSample" PaneDisplayMode="Top"
IsSettingsVisible="True" IsBackButtonVisible="Collapsed">
<NavigationView.MenuItems>
<NavigationViewItem Tag="Home_Page" HorizontalAlignment="Stretch" Height="38" Margin="12,0,0,0" VerticalAlignment="Stretch">
<NavigationViewItem.Content>
<TextBlock Text="Menu Item1" Foreground="Red"></TextBlock>
</NavigationViewItem.Content>
</NavigationViewItem>
<NavigationViewItem Content="Instalpage" Tag="Install_Page" />
<NavigationViewItem Content="Menu Item3" Tag="SamplePage3" />
<NavigationViewItem Content="Menu Item4" Tag="SamplePage4" />
</NavigationView.MenuItems>
<Frame x:Name="contentFrame" >
<Frame.ContentTransitions>
<TransitionCollection>
<NavigationThemeTransition>
<DrillInNavigationTransitionInfo />
</NavigationThemeTransition>
</TransitionCollection>
</Frame.ContentTransitions>
</Frame>
<NavigationView.PaneFooter>
<StackPanel Orientation="Horizontal">
<!--<NavigationViewItem Icon="SelectAll" Content="Select all" Foreground="White" />
<NavigationViewItem Icon="Help" Content="Help" />-->
</StackPanel>
</NavigationView.PaneFooter>
</NavigationView>
NavigationViewItem 确实有一个名为 Foreground 的 属性,它对我有用
<NavigationView.MenuItems>
<NavigationViewItem Content="Menu Item1" Foreground="Black" Tag="Home_Page" Height="38" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" />
<NavigationViewItem Content="Instalpage" Foreground="Black" Tag="Install_Page" />
<NavigationViewItem Content="Menu Item3" Foreground="Black" Tag="SamplePage3" />
<NavigationViewItem Content="Menu Item4" Foreground="Black" Tag="SamplePage4" />
</NavigationView.MenuItems>