-1

我希望能够双击列表视图项目。我使用了DoubleTapped事件,但是当我双击 listview(不是项目)事件时,我只想使用项目(不是 listview 本身(面板,边框,...)),在 wpf 中我们可以简单地通过创建来做到这一点listviewitem 样式:

<Style TargetType="ListViewItem">
            <EventSetter Event="MouseDoubleClick" Handler="ListViewItem_MouseDoubleClick" />
        </Style>

但是这种方法在 uwp 中不起作用,我该怎么做?

4

1 回答 1

0

我希望能够双击列表视图项目。我使用了 DoubleTapped 事件,但是当我双击列表视图(不是项目)事件时,我只想使用项目(不是列表视图本身(面板,边框,...)),

UWP 平台不支持添加EventSetter,如果要添加DoubleTappedListViewItem请添加到ItemTemplate.

例如

<ListView VerticalAlignment="Bottom">
    <ListView.ItemContainerStyle>
        <Style TargetType="ListViewItem">
            <Setter Property="HorizontalContentAlignment" Value="Stretch" />
        </Style>
    </ListView.ItemContainerStyle>
    <ListView.ItemTemplate>
        <DataTemplate>
            <Grid DoubleTapped="Grid_DoubleTapped">
                <TextBlock Text="{Binding}" />
            </Grid>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

如上面的代码,你可以听 Grid DoubleTapped,请注意我们需要设置 ListViewItemHorizontalContentAlignmentStretch确保整个项目可以响应双击。

于 2021-07-26T06:35:43.597 回答