答案 0 :(得分:1)
您可能需要滚动自己的操作来替换“轻扫”以选择。'此框架不是开源的,因此您甚至无法修改与某些控件绑定的内置手势。 无论如何,我得到了一个样本,为你展示你想要的东西。 到此为止。
这里是xaml
<ListView SelectionMode="Multiple"
IsSwipeEnabled="False">
<ListView.ItemTemplate>
<DataTemplate>
<ContentPresenter ManipulationMode="TranslateX, System"
ManipulationDelta="UIElement_OnManipulationDelta"></ContentPresenter>
</DataTemplate>
</ListView.ItemTemplate>
<ListViewItem ManipulationMode="TranslateX, System"
ManipulationDelta="UIElement_OnManipulationDelta">
<Grid Height="100"
Width="200"
Background="Blue"></Grid>
</ListViewItem>
<ListViewItem ManipulationMode="TranslateX, System"
ManipulationDelta="UIElement_OnManipulationDelta">
<Grid Height="100"
Width="200"
Background="Blue"></Grid>
</ListViewItem>
<ListViewItem ManipulationMode="TranslateX, System"
ManipulationDelta="UIElement_OnManipulationDelta">
<Grid Height="100"
Width="200"
Background="Blue"></Grid>
</ListViewItem>
<ListViewItem ManipulationMode="TranslateX, System"
ManipulationDelta="UIElement_OnManipulationDelta">
<Grid Height="100"
Width="200"
Background="Blue"></Grid>
</ListViewItem>
</ListView>
和背后的代码
private void UIElement_OnManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs e)
{
e.Handled = true;
ListViewItem item = sender as ListViewItem;
if (item == null) return;
if (e.Cumulative.Translation.X > 150)
{
item.IsSelected = !item.IsSelected;
e.Complete();
}
}