Wpf WrapPanel水平方向不为';行不通

Wpf WrapPanel水平方向不为';行不通,wpf,listview,scroll,kinect,wrappanel,Wpf,Listview,Scroll,Kinect,Wrappanel,由于新版本的kinect不存在旧的kinectScrollviewer,因此我使用了带有图像列表视图的ScrollViewer。问题是隐藏滚动条可见性或水平滚动时不可滚动,如果我使用SelectionChanged,鼠标可以正常工作,但如果我在第一次单击选择区域后使用手势,则不会消失,因此我不会选择元素 我只会水平滚动(所以我禁用了垂直),但你的代码也不会用手势滚动。而且点击也不起作用。 如果我使用orientation=“Vertical”则是垂直滚动(尽管在示例中使用此设置可水平滚动),但如

由于新版本的kinect不存在旧的kinectScrollviewer,因此我使用了带有图像列表视图的ScrollViewer。问题是隐藏滚动条可见性或水平滚动时不可滚动,如果我使用SelectionChanged,鼠标可以正常工作,但如果我在第一次单击选择区域后使用手势,则不会消失,因此我不会选择元素 我只会水平滚动(所以我禁用了垂直),但你的代码也不会用手势滚动。而且点击也不起作用。 如果我使用orientation=“Vertical”则是垂直滚动(尽管在示例中使用此设置可水平滚动),但如果我使用orientation=“Vertical”则不起作用:(


列表视图
已经包含作为默认模板一部分的
ScrollViewer
,您需要通过将附加的
ScrollViewer.VerticalScrollBarVisibility
属性设置为
已禁用

<Grid>
   <Grid.RowDefinitions>
      <RowDefinition Height="Auto"/>
      <RowDefinition Height="*"/>
   </Grid.RowDefinitions>
   <k:KinectUserViewer Grid.Row="0" Height="100"/>
   <ContentControl Grid.Row="1" x:Name="navigationRegion">
      <Grid x:Name="kinectGrid">
         <ListView 
             Grid.Row="0" 
             ScrollViewer.VerticalScrollBarVisibility="Disabled" 
             x:Name="listViewExercise" 
             SelectionChanged="listViewExercise_SelectionChanged" 
             BorderThickness="0" 
             Background="Black" >
            <ListView.ItemsPanel>
               <ItemsPanelTemplate>
                  <WrapPanel VerticalAlignment="Center" Orientation="Horizontal" />
               </ItemsPanelTemplate>
            </ListView.ItemsPanel>
         </ListView>
      </Grid>
   </ContentControl>
</Grid>

很好,现在水平滚动可以正常工作。如果我使用滚动是一个步骤,而不是流动。因为你认为它不像鼠标单击那样工作,所以用手单击?如果你想按物理单位滚动,请尝试设置
ScrollViewer.CanContentScroll=“false”
反对
ListView
也谢谢现在使用ListView也可以很好地滚动。现在我尝试解决单击和问题,单击有什么问题?如果我使用鼠标工作正常,如果我使用手势,当我按下一个图像时,我会选择它,但保持按下状态,如果我按下另一个图像,则会永远返回第一个。现在我不知道我是否需要一个或多个选择
<Grid>
   <Grid.RowDefinitions>
      <RowDefinition Height="Auto"/>
      <RowDefinition Height="*"/>
   </Grid.RowDefinitions>
   <k:KinectUserViewer Grid.Row="0" Height="100"/>
   <ContentControl Grid.Row="1" x:Name="navigationRegion">
      <Grid x:Name="kinectGrid">
         <ListView 
             Grid.Row="0" 
             ScrollViewer.VerticalScrollBarVisibility="Disabled" 
             x:Name="listViewExercise" 
             SelectionChanged="listViewExercise_SelectionChanged" 
             BorderThickness="0" 
             Background="Black" >
            <ListView.ItemsPanel>
               <ItemsPanelTemplate>
                  <WrapPanel VerticalAlignment="Center" Orientation="Horizontal" />
               </ItemsPanelTemplate>
            </ListView.ItemsPanel>
         </ListView>
      </Grid>
   </ContentControl>
</Grid>
<ItemsPanelTemplate>
    <StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>