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

How to hid scrollbar in navigationview

我正在使用导航视图并想隐藏滚动条。 但是 ScrollViewer.VerticalScrollBarVisibility="Hidden" 是没用的。 Operation results

 <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"> 来隐藏滚动条,但它没用。 滚动条仍然可见。 我在官方文档中没有找到这个解决方案

How to hid scrollbar in navigationview

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

像这样:

            <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 中打开 文档大纲 window。然后找到NavigationView控件,right-click在上面,选择Edit Template->Edit a Copy。 Visual Studio会自动生成一个默认的NavigationView样式。