如何将我的 ViewModel(当前在 BindingContext 中)的 ICommand 对象绑定(bind)到 XAML 中 ListView 的 ItemTapped 或 ItemSelected?
使用 Button 时这是一项简单的任务,我只需设置 Command="MyViewModelCommand"一切正常。
最佳答案
当您可以直接在 ViewModel 中直接获取选定/点击的对象时,我不确定为什么需要在页面中提供 Item Selected 或 Item Tapped 事件:
我认为您已经使用以下类型的代码绑定(bind)了 ListView
<ListView ItemsSource="{Binding PermitDetails}"
SelectedItem="{Binding objItemSelected, Mode=TwoWay}" x:Name="lst"
RowHeight="35" HorizontalOptions="FillAndExpand"
VerticalOptions="Fill">
在与页面绑定(bind)的 View 模型中,您必须定义属性 objItemSelected
,如下面的代码所示
private Permit _ItemSelected;
public Permit objItemSelected {
get {
return _ItemSelected;
}
set {
if (_ItemSelected != value) {
_ItemSelected = value;
OnPropertyChanged ("ItemSelected");
}
}
}
如果您想执行任何其他功能,如导航到详细信息页面,您可以在执行 OnPropertyChanged 语句后从设置属性执行此操作。
希望这对您有所帮助!
关于c# - XAML 上的 Xamarin Forms ListView ItemTapped/ItemSelected 命令绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24792991/