UWP:ListView ItemClick 不起作用

Posted

技术标签:

【中文标题】UWP:ListView ItemClick 不起作用【英文标题】:UWP: ListView ItemClick not work 【发布时间】:2017-05-18 03:28:30 【问题描述】:

我必须在 UWP 中做一个 Master/Detail

1- 如果您使用的是笔记本电脑:

显示这个人的数据的负责GridView出现。 所以当你选择一个item时绑定到ViewModel。

<ScrollViewer x:Name="ScrollLista" Grid.Column="0" Grid.Row="1">
            <ListView x:Name="Lista" ItemsSource="Binding Lista" ItemClick="Lista_ItemClick" SelectedItem="Binding PersonaSeleccionada, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged">
                <ListView.ItemTemplate>
                    <DataTemplate>
                        <StackPanel Orientation="Horizontal">
                            <TextBlock Text="Binding nombre" />
                            <TextBlock Text="Binding apellido" />
                        </StackPanel>
                    </DataTemplate>
                </ListView.ItemTemplate>
            </ListView>
        </ScrollViewer>

        <Grid x:Name="CRUD" Grid.Column="1" Grid.Row="1" DataContext="Binding PersonaSeleccionada" Background="ThemeResource ApplicationPageBackgroundThemeBrush">
            ...

        </Grid>

2- 什么时候是手机:

只会出现列表,当我选择一个项目时,这应该是两件事。

    通过使用 SelectedItem 绑定调用 ViewModel。 使用 ItemClick 调用后面的代码,这将负责调用另一个页面。

问题:ItemClick 不工作,不调用 Lista_ItemClick... 如何调用方法并将所选项目发送到后面的代码?

【问题讨论】:

请注意,如果您想要一个简单的实现,请查看 UWP 工具包中的 MasterDetailControl github.com/Microsoft/UWPCommunityToolkit docs.uwpcommunitytoolkit.com/en/master/controls/… 【参考方案1】:

要使点击事件起作用,应将IsItemClickEnabled="True" 添加到 ListView。

【讨论】:

很好的快速回答。但有趣的是,Visual Studio(运行 2017)提供了一种双击 ItemClick 事件的方法,它确实为 ItemClick 添加了事件处理程序,但没有添加关联的 XAML 属性。如果没有触发,添加 ItemClick 事件有什么意义。谢谢女士! :)

以上是关于UWP:ListView ItemClick 不起作用的主要内容,如果未能解决你的问题,请参考以下文章

UWP ListView 滚动和缩放不起作用

在 ItemClick() 事件上获取 ListView 项目的详细信息

如何将单独的参数传递给 Xamarin Android C# 中的 ListView.ItemClick 调用

Listview Itemclick事件未触发android xamarin

UWP:在按钮单击事件上取消选中 ListView 内的复选框

未调用列表视图中的 xamarin 项目单击