如何在 UWP 中使用 ListView 捕获点击?
How to capture click with ListView in UWP?
我想通过我的视图模型从列表视图捕获点击事件。这是我目前所拥有的。
我的Xaml.
<ListView RelativePanel.Below="list3" ItemClick="{x:Bind ViewModel.ClickItemList}" RelativePanel.AlignLeftWithPanel="True" RelativePanel.AlignRightWithPanel="True">
<ListViewHeaderItem Content="Header"></ListViewHeaderItem>
<ListViewItem Content="Item 1" />
<ListViewItem Content="Item 2" />
</ListView>
我的视图模型。
public void ClickItemList(object sender, ItemClickEventArgs e)
{
var clickedItem = (ListViewItem)e.ClickedItem;
System.Diagnostics.Debug.WriteLine(clickedItem.Content);
}
很遗憾,没有触发 ClickItemList。
在 ListViewItem 中捕获点击的推荐方法是什么?
您应该设置 IsItemClickEnabled="True"
<ListView RelativePanel.Below="list3" IsItemClickEnabled="True" ItemClick="{x:Bind ViewModel.ClickItemList}" RelativePanel.AlignLeftWithPanel="True" RelativePanel.AlignRightWithPanel="True">
<ListViewHeaderItem Content="Header"></ListViewHeaderItem>
<ListViewItem Content="Item 1" />
<ListViewItem Content="Item 2" />
</ListView>
你需要IsItemClickEnabled
:
<ListView RelativePanel.Below="list3"
IsItemClickEnabled="True"
ItemClick="{x:Bind ViewModel.ClickItemList}"
RelativePanel.AlignLeftWithPanel="True"
RelativePanel.AlignRightWithPanel="True">
<ListViewHeaderItem Content="Header"></ListViewHeaderItem>
<ListViewItem Content="Item 1" />
<ListViewItem Content="Item 2" />
</ListView>
我想通过我的视图模型从列表视图捕获点击事件。这是我目前所拥有的。
我的Xaml.
<ListView RelativePanel.Below="list3" ItemClick="{x:Bind ViewModel.ClickItemList}" RelativePanel.AlignLeftWithPanel="True" RelativePanel.AlignRightWithPanel="True">
<ListViewHeaderItem Content="Header"></ListViewHeaderItem>
<ListViewItem Content="Item 1" />
<ListViewItem Content="Item 2" />
</ListView>
我的视图模型。
public void ClickItemList(object sender, ItemClickEventArgs e)
{
var clickedItem = (ListViewItem)e.ClickedItem;
System.Diagnostics.Debug.WriteLine(clickedItem.Content);
}
很遗憾,没有触发 ClickItemList。
在 ListViewItem 中捕获点击的推荐方法是什么?
您应该设置 IsItemClickEnabled="True"
<ListView RelativePanel.Below="list3" IsItemClickEnabled="True" ItemClick="{x:Bind ViewModel.ClickItemList}" RelativePanel.AlignLeftWithPanel="True" RelativePanel.AlignRightWithPanel="True">
<ListViewHeaderItem Content="Header"></ListViewHeaderItem>
<ListViewItem Content="Item 1" />
<ListViewItem Content="Item 2" />
</ListView>
你需要IsItemClickEnabled
:
<ListView RelativePanel.Below="list3"
IsItemClickEnabled="True"
ItemClick="{x:Bind ViewModel.ClickItemList}"
RelativePanel.AlignLeftWithPanel="True"
RelativePanel.AlignRightWithPanel="True">
<ListViewHeaderItem Content="Header"></ListViewHeaderItem>
<ListViewItem Content="Item 1" />
<ListViewItem Content="Item 2" />
</ListView>