ListView SelectedItem绑定无法正常工作

时间:2016-06-28 13:46:15

标签: listview xamarin.android xamarin.forms

我在Android中使用自定义LabelRenderer作为我的Xamarin表单项目。 在此LabelRenderer内部我使用Control.SetTextIsSelectable(true),以便人们可以复制/粘贴给定标签中的文字。 (此方法适用于Android内部TextView

这一切都有效,但是在ListView.ItemTemplate(仅StackLayout带有一些标签)中使用此内容时,ListView.SelectedItem将不再有效。 要正确,如果您设法在ItemTemplate内部的标签边界之外进行挖掘,它将起作用。因此,标签会吃掉SelectedItem绑定的触摸事件,因为它需要查找点击选择以启用复制/粘贴功能:/

换句话说,如果标签在ListView中以通用方式使用,我们如何禁用标签的触摸行为?

1 个答案:

答案 0 :(得分:0)

尝试将标签的属性InputTransparent设置为true。这样,触摸事件将在标签上被忽略并被其父级捕获。

UPDATE
如果InputTransparent对您不起作用,请尝试从ListViewItemTappedAttached开始 https://github.com/XAM-Consulting/FreshEssentials

页面中的示例:

yourList.SetBinding<IYourPageViewModel>(ListViewItemTappedAttached.CommandProperty, x => x.YourCommand);

并在您的视图模型中:

YourCommand = new Command<IYourCellViewModel>(item => yourMethod(item));