C# 如何使NavView项的行为类似于;按钮;而不是",;单选按钮;?
我正在尝试让我的NavViewItems像按钮一样工作,而不是切换按钮。我不希望NavViewItem在被选中后仍保持向下C# 如何使NavView项的行为类似于;按钮;而不是",;单选按钮;?,c#,uwp,C#,Uwp,我正在尝试让我的NavViewItems像按钮一样工作,而不是切换按钮。我不希望NavViewItem在被选中后仍保持向下 private void NavView_SelectionChanged( NavigationView sender, NavigationViewSelectionChangedEventArgs args) { if (args.IsSettingsSelected) {
private void NavView_SelectionChanged(
NavigationView sender,
NavigationViewSelectionChangedEventArgs args)
{
if (args.IsSettingsSelected)
{
NavView.Header = "Settings";
//rootFrame.Navigate(typeof(SettingsPage));
}
else if (args.SelectedItem != null)
{
NavigationViewItem item
= args.SelectedItem as NavigationViewItem;
NavView.Header = item.Tag;
// Unclick/Unselect NavViewItem Here <--
}
}
}
<Page ... >
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<NavigationView
RequestedTheme="Dark"
x:Name="NavView"
Header="Welcome"
SelectionChanged="NavView_SelectionChanged">
<NavigationView.MenuItems>
<NavigationViewItem
Icon="Home"
Content="Home"
Tag="Home"
Background="Maroon"
Foreground="White"/>
<NavigationViewItem
Icon="Back"
Content="PrevPage"
Tag="Back"
Background="Maroon"
Foreground="White"/>
<NavigationViewItem
Icon="Globe"
Content="Enter Info1"
Tag="EnterCompany"
Background="DarkGreen" Foreground="White"/>
<NavigationViewItem
Icon="PostUpdate"
Content="Enter Info2"
Tag="EnterJob"
Background="DarkGreen" Foreground="White"/>
<NavigationViewItem
Icon="Globe"
Content="Query Info1"
Tag="QueryCompany"
Background="DarkBlue" Foreground="White"/>
<NavigationViewItem
Icon="PostUpdate"
Content="Query Info2"
Tag="QueryJob"
Background="DarkBlue"
Foreground="White"/>
</NavigationView.MenuItems>
<Frame x:Name="ContentFrame" />
</NavigationView>
</Grid>
</Page>
private void导航视图\u选择已更改(
导航视图发送器,
NavigationViewSelectionChangedEventArgs(参数)
{
如果(参数IsSettingsSelected)
{
NavView.Header=“设置”;
//rootFrame.Navigate(typeof(SettingsPage));
}
else if(args.SelectedItem!=null)
{
NavigationViewItem项目
=args.SelectedItem作为NavigationViewItem;
NavView.Header=item.Tag;
//在此处取消单击/取消选择NavViewItem将SelectedIndex从SelectionChanged事件设置为null,以使导航选项卡不动并像按钮一样工作。1803年以前,SelectedIndex属性仅从SelectionChanged事件中读取,并使用Dispatcher进行所需设置
await Dispatcher.RunAsync(
Windows.UI.Core.CoreDispatcherPriority.Normal,
() => {
NavView.SelectedItem = null;
NavView.Header = "myHeader;
});
然而,在1803年,尽管SelectedItem属性不再是SelectionChanged事件的只读属性,但这种技巧不再有效。在1803年使用Dispatcher将SelectionIndex设置为null会导致无限递归循环