UWP GridView 可滚动直到被点击

UWP GridView Scrollable until clicked

我在 UWP 中创建了这个 GridView,它显示了我想要的内容,但是为了滚动它,我需要先点击它,然后再滚动。当使用触摸界面时,我需要点击一次然后滚动。而且当 select 一个项目时,我需要 tap/click 两次。

有什么方法可以避免这种 select 然后滚动的需要?

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <TextBlock Text="Title" Margin="0,0,0,20" Style="{ThemeResource SubheaderTextBlockStyle}" Grid.Row="0"></TextBlock>
    <GridView x:Name="ReportsGridView" ItemsSource="{x:Bind Reports, Mode=OneWay}" Grid.Row="1" 
              ScrollViewer.VerticalScrollMode="Disabled" ScrollViewer.HorizontalScrollMode="Auto" ScrollViewer.HorizontalScrollBarVisibility="Hidden" >
        <GridView.ItemsPanel>
            <ItemsPanelTemplate>
                <ItemsWrapGrid Orientation="Vertical" />
            </ItemsPanelTemplate>
        </GridView.ItemsPanel>
        <GridView.ItemTemplate>
            <DataTemplate x:DataType="data:Report">
                ...
            </DataTemplate>
        </GridView.ItemTemplate>
    </GridView>
</Grid>

我已经尝试过以编程方式设置焦点:

ReportsGridView.Focus(FocusState.Programmatic);

我发现了问题。它与 GridView 本身无关。我有一个 CommandBar,其 IsOpen 属性 设置为 True。

<CommandBar IsOpen="True">

因此,需要第一个 tap/click 来关闭栏,然后才能滚动或 select。