如何在导航视图中隐藏滚动条



我正在使用navigationview并希望隐藏滚动条。但是ScrollViewer.VerticalScrollBarVisibility=";隐藏的"毫无用处。操作结果

<NavigationView x:Name="ConrtolList"
IsSettingsVisible="False"
IsBackButtonVisible="Collapsed"
IsBackEnabled="True"
AlwaysShowHeader="True"
PaneTitle="后台管理"
PaneDisplayMode="Left"
ExpandedModeThresholdWidth="500"
SelectionFollowsFocus="Disabled"
IsTabStop="False"
Loaded="nvSample_Loaded"
SelectionChanged="ConrtolList_SelectionChanged"
ScrollViewer.VerticalScrollBarVisibility="Hidden"
>
<NavigationView.MenuItems>
<NavigationViewItem Content="主页" Tag="Home" x:Name="SamplePage1Item">
<NavigationViewItem.Icon>
<SymbolIcon  Symbol="home"/>
</NavigationViewItem.Icon>
</NavigationViewItem>
<NavigationViewItemHeader Content="批发商管理"/>
<NavigationViewItem Content="批发商账户" Tag="MerchantsAccount" x:Name="MerchantsAccount">
<NavigationViewItem.Icon>
<SymbolIcon Symbol="People" />
</NavigationViewItem.Icon>
</NavigationViewItem>
<NavigationViewItem Content="商品审核" Tag="CommodityJustice" x:Name="CommodityJustice" SelectsOnInvoked="True">
<NavigationViewItem.Icon>
<SymbolIcon Symbol="BrowsePhotos" />
</NavigationViewItem.Icon>
</NavigationViewItem>
<NavigationViewItem Content="违禁商户" Tag="MerchantsBan" x:Name="MerchantsBan">
<NavigationViewItem.Icon>
<SymbolIcon Symbol="Dislike" />
</NavigationViewItem.Icon>
</NavigationViewItem>
<NavigationViewItem Content="商户申诉" Tag="MerchantsAppel" x:Name="MerchantsAppel">
<NavigationViewItem.Icon>
<SymbolIcon Symbol="Help" />
</NavigationViewItem.Icon>
</NavigationViewItem>
<NavigationViewItemHeader Content="零售商管理"/>
<NavigationViewItem Content="零售商账户" Tag="DealerAccount" x:Name="DealerAccount">
<NavigationViewItem.Icon>
<SymbolIcon Symbol="People" />
</NavigationViewItem.Icon>
</NavigationViewItem>
<NavigationViewItem Content="违禁零售商" Tag="DealerBan" x:Name="DealerBan">
<NavigationViewItem.Icon>
<SymbolIcon Symbol="Dislike" />
</NavigationViewItem.Icon>
</NavigationViewItem>
<NavigationViewItem Content="零售商申诉" Tag="DealerAppel" x:Name="DealerAppel">
<NavigationViewItem.Icon>
<SymbolIcon Symbol="Help" />
</NavigationViewItem.Icon>
</NavigationViewItem>
<NavigationViewItemHeader Content="商品管理"/>
<NavigationViewItem Content="商品一览" Tag="CommodityCheck" x:Name="CommodityCheck">
<NavigationViewItem.Icon>
<SymbolIcon Symbol="Paste" />
</NavigationViewItem.Icon>
</NavigationViewItem>
<NavigationViewItem Content="商品修改" Tag="CommodityUpdate" x:Name="CommodityUpdate">
<NavigationViewItem.Icon>
<SymbolIcon Symbol="Edit" />
</NavigationViewItem.Icon>
</NavigationViewItem>
<NavigationViewItem Content="违禁商品" Tag="CommodityBan" x:Name="CommodityBan">
<NavigationViewItem.Icon>
<SymbolIcon Symbol="Dislike" />
</NavigationViewItem.Icon>
</NavigationViewItem>
<NavigationViewItemHeader Content="订单管理"/>
<NavigationViewItem Content="订单一览" Tag="BullCheck" x:Name="BullCheck">
<NavigationViewItem.Icon>
<SymbolIcon Symbol="Page2" />
</NavigationViewItem.Icon>
</NavigationViewItem>
</NavigationView.MenuItems>
<NavigationView.PaneFooter>
<StackPanel x:Name="FooterStackPanel" Orientation="Vertical" Visibility="Visible">
<NavigationViewItem Content="信息下载" Icon="Download" AutomationProperties.Name="download" />
<NavigationViewItem Content="信息导入" Icon="Add" AutomationProperties.Name="favorite" />
</StackPanel>
</NavigationView.PaneFooter>
<Frame x:Name="contentFrame" />
</NavigationView>

那么如何隐藏箭头指向的滚动条。我将<NavigationView ScrollViewer.VerticalScrollBarVisibility="Hidden">添加到隐藏滚动条中,但它没有用。滚动条仍然可见。我没有在官方文件中找到这个解决方案

如何在导航视图中隐藏滚动条

您需要创建默认样式NavigationView。然后找到名为MenuItemsHostNavigationViewList。将NavigationViewListScrollViewer.VerticalScrollBarVisibility属性设置为隐藏

像这样:

<NavigationViewList x:Name="MenuItemsHost"
HorizontalAlignment="Stretch"
ItemTemplate="{TemplateBinding MenuItemTemplate}" 
ItemContainerStyle="{TemplateBinding MenuItemContainerStyle}"
ItemTemplateSelector="{TemplateBinding MenuItemTemplateSelector}"
IsItemClickEnabled="True"
ItemContainerStyleSelector="{TemplateBinding MenuItemContainerStyleSelector}" 
Margin="0,0,0,20" Grid.Row="6" SelectionMode="Single" 
ScrollViewer.VerticalScrollBarVisibility="Hidden"
SingleSelectionFollowsFocus="{Binding TemplateSettings.SingleSelectionFollowsFocus, RelativeSource={RelativeSource Mode=TemplatedParent}}"
SelectedItem="{TemplateBinding SelectedItem}"/>

若要创建NavigationView的默认样式,请在Visual Studio中打开文档大纲窗口。然后找到NavigationView控件,右键单击它,选择编辑模板->编辑副本。Visual Studio将自动生成NavigationView的默认样式。

最新更新