C# 在ListView Clickmode中设置SelectionChanged=";按「;超宽带
我有一个ListView,我希望在按下鼠标时选择ListView。(如按钮的ClickMode属性)。有什么解决办法吗 我尝试将按钮放入ListView模板并更改其ClickMode属性 默认情况下,释放鼠标时会触发。看来我们无法改变它。因此,我们可以将按钮放在C# 在ListView Clickmode中设置SelectionChanged=";按「;超宽带,c#,uwp,uwp-xaml,C#,Uwp,Uwp Xaml,我有一个ListView,我希望在按下鼠标时选择ListView。(如按钮的ClickMode属性)。有什么解决办法吗 我尝试将按钮放入ListView模板并更改其ClickMode属性 默认情况下,释放鼠标时会触发。看来我们无法改变它。因此,我们可以将按钮放在列表视图项目模板中,并根据您的想法更改其单击模式,或者为项目模板内的容器注册一个事件,当按下鼠标未释放时将触发该事件 但我无法访问在ListView中单击的对象 要访问单击的项目,您仍然可以使用属性(如ofListView)获取所选项目。
列表视图
项目模板中,并根据您的想法更改其单击模式,或者为项目模板内的容器注册一个事件,当按下鼠标未释放时将触发该事件
但我无法访问在ListView中单击的对象
要访问单击的项目,您仍然可以使用属性(如ofListView
)获取所选项目。例如:
XAML代码
<ListView Name="CategoryLIstView" Grid.Row="1" ItemsSource="{x:Bind categories}" HorizontalAlignment="Center" Margin="10" VerticalAlignment="Top" IsItemClickEnabled="True" SelectionChanged="CategoryLIstView_SelectionChanged" ItemClick="CategoryLIstView_ItemClick" PointerPressed="CategoryLIstView_PointerPressed">
<ListView.ItemTemplate>
<DataTemplate x:DataType="local:Category">
<StackPanel Margin="0" PointerPressed="StackPanel_PointerPressed">
<StackPanel Orientation="Vertical" >
<TextBlock Text="{x:Bind Name}" Foreground="Blue" FontWeight="Bold" FontFamily="Yu Gothic" FontSize="17"/>
</StackPanel>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
您尝试过什么,在哪里遇到问题?您尝试过ListView的SelectionMode属性吗?@Romasz我想在按下鼠标时选择ListView,我们有ClickMode属性的按钮,但在ListView中没有此属性。我试图将按钮放入ListView模板并更改其ClickMode属性,但我无法访问在ListView中单击的对象(我想我应该这样做)!你说的SelectionMode属性,我认为,它是用于选择单个或多个项目等,而不是用于ClickMode!如果将SelectionMode启用为Multiple,则可以通过单击鼠标/触摸项目来选择项目。您必须更好地描述您的问题。@Romasz我的问题是,我有一个触摸式Lcd,接受点击的按下模式,但在按下和释放的情况下,点击都不起作用!你能详细描述一下SelectionMode是如何帮助我的吗!谢谢。似乎我不明白你的问题,请编辑并添加更多信息,你尝试过的代码,问题在哪里,你想实现什么。
private async void StackPanel_PointerPressed(object sender, PointerRoutedEventArgs e)
{
await new Windows.UI.Popups.MessageDialog("point press").ShowAsync();
System.Diagnostics.Debug.WriteLine(CategoryLIstView.SelectedIndex);
}