MvvmCross:从android中的MvxListView获取所选项目的最佳方法是什么?

Joh*_*hnB 7 mvvm xamarin.android mvvmcross xamarin

我正在使用MvvmCross v3.06,我在android中定义了一个绑定到列表的MvxListView.我可以看到列表,但无法确定获取单击它时所选项目的最佳方法.

目前我在活动的OnCreate中执行以下操作,但它不是特别是MVVM,我想知道是否有更好的方法通过绑定?

var list = FindViewById<MvxListView>(Resource.Id.subslist);
list.ItemClick = ((MyViewModel)ViewModel).ItemSelectedCommand;
Run Code Online (Sandbox Code Playgroud)

我找不到任何关于最佳方法的文档,所以任何帮助都会很棒.

Stu*_*art 13

对于android,最常见的技术是绑定ItemClickMvxCommand<TItem>- 所以使用:

 local:MvxBind="ItemClick ItemSelectedCommand"
Run Code Online (Sandbox Code Playgroud)

您可以在示例中看到这一点,包括:


较少见的(到目前为止),针对Android,还可以绑定到一个自定义绑定SelectedItemMvxListView

这个技术显示在MoreControls中的一个Spinner(MvxSpinner)上 - https://github.com/slodge/MvvmCross-Tutorials/blob/master/MoreControls/MoreControls.Droid/Resources/Layout/FirstView.axml(这个例子是在N = 18视频 - 请参阅http://youtu.be/s1LhXdCTsn4?t=7m26s