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