0

私はこのGridViewをUWPで作成していますが、私が望むものが表示されますが、スクロールするには前にクリックしてからスクロールする必要があります。タッチインターフェースを使用するときは、一度タップしてからスクロールする必要があります。また、アイテムを選択する際には、タップ/クリックする必要が2回あります。クリックするまでスクロール可能なUWP GridView

選択してスクロールする必要性を回避する方法はありますか?

<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); 
+0

なぜScrollViewerのプロパティを操作していますか? – Jessica

+0

@Jessicaスクロールバーを表示せずにスクロールを水平にする。 (参照:https://stackoverflow.com/questions/34476647/single-row-horizo​​ntally-scrolling-swipeable-gridview) –

+0

何も変更しない場合は、期待どおりに動作しますか? – Jessica

答えて

0

私は問題を発見しました。 GridView自体に関連するものではありませんでした。 IsOpenプロパティがTrueに設定されたCommandBarがありました。

<CommandBar IsOpen="True"> 

したがって、スクロールまたは選択する前にバーを閉じるには最初のタップ/クリックが必要でした。

関連する問題