ScrollViewer 不适用于 ItemsControl

ScrollViewer not working with ItemsControl

我正在尝试使用 ScrollViewer 来滚动 ItemsControl 中的项目,但由于某种原因,它不起作用。滚动视图显示但已禁用。

<UserControl x:Class="Tool.Views.ShortcutsView"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
            d:DesignWidth="500"
            mc:Ignorable="d" Height="541">

<UserControl.Resources>
    <Style x:Key="GlobalShortcutButtonTemplate" TargetType="{x:Type Button}"> 
     <!-- Style code -->
 </Style>

</UserControl.Resources>

        <Grid Margin="10,40,10,0" Background="White" Height="108" VerticalAlignment="Top">


            <ScrollViewer CanContentScroll="True">        
                <ItemsControl 
                        ItemsSource="{Binding ShortcutsObservableCollection}" 
                        Height="108" VerticalAlignment="Top" HorizontalAlignment="Left">

                    <ItemsControl.ItemsPanel>
                        <ItemsPanelTemplate>
                            <WrapPanel Orientation="Horizontal" HorizontalAlignment="Center"  Margin="10"/>
                        </ItemsPanelTemplate>
                    </ItemsControl.ItemsPanel>

                    <ItemsControl.ItemTemplate>
                        <DataTemplate>
                            <Button 
                                    Height="35" 
                                    Content="{Binding ShortcutName}" 
                                    Command="{Binding ShortcutCommand}"
                                    CommandParameter="{Binding FilePath}" 
                                    Margin="10 0 0 10"
                                    Background="#FF30CCFF" 
                                    Foreground="White"
                                    Padding="10,0"/>
                        </DataTemplate>
                    </ItemsControl.ItemTemplate>
                </ItemsControl>
            </ScrollViewer>


        </Grid>
</UserControl>

这是我看到的...

ItemsControl 中有很多项目可供滚动条显示并能够滚动其中的项目,其余项目被隐藏。

知道我该怎么做才能使滚动条正确显示吗?

只需从 ItemsControl 中删除 Height="108"。您无法滚动,因为没有可滚动的内容。