MVVM Cross View以2列显示列表

时间:2015-09-03 01:44:56

标签: c# android xamarin mvvmcross

在MVVM中,可以使用哪个窗口小部件/视图来显示2列中的对象列表? MvxListView是否足够?

即,不是直接列出每个对象,而是将它们显示在2个垂直列中,如下图所示:

enter image description here enter image description here

我知道如何绑定和显示垂直的对象列表,这很容易,但是如何将一个对象列表显示为2列?也许我需要创建一个自定义绑定?

PS:是否有MVVM Cross小部件的参考?我搜索过,但没有找到任何文档。我正在寻找一份全面的清单; MvxFrameView,MvxImageView,MvxListView等

视图模型:

public class FirstViewModel : MvxViewModel
{
    private List<Category> _cats;
    public List<Category> Cats
    {
        get { return _cats; }
        set
        {
            _cats= value;
            RaisePropertyChanged(() => Cats);
        }
    }
}

Android View(简单的垂直布局):

<Mvx.MvxListView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    local:MvxBind="ItemsSource Cats"
    local:MvxItemTemplate="@layout/item_category" />

1 个答案:

答案 0 :(得分:5)

只需使用MvxGridView: &LT; Mvx.MvxGridView     机器人:layout_width =&#34; FILL_PARENT&#34;     机器人:layout_height =&#34; FILL_PARENT&#34;     机器人:= numColumns列&#34; 2&#34;     机器人:verticalSpacing =&#34; 4DP&#34;     机器人:horizo​​ntalSpacing =&#34; 4DP&#34;     机器人:stretchMode =&#34; columnWidth时&#34;     机器人:比重=&#34;中心&#34;     local:MvxBind =&#34; ItemsSource Cats&#34;     当地:MvxItemTemplate =&#34; @布局/ item_category&#34; /&GT;