【发布时间】:2014-06-29 22:44:14
【问题描述】:
我想要一个 ChecboxElements 列表,其中第一个设置单击时所有其他项目的选中状态。
第一个我可以正确绑定,但是对于子元素,我遇到了一些问题。
如何动态添加项目并将它们绑定到列表中对象的属性?
var checkboxElement = new CheckboxElement("[All]");
var set = this.CreateBindingSet<LocationFilterView, LocationFilterViewModel>();
set.Bind(checkboxElement).For(v => v.Value).To(vm => vm.AllChecked).TwoWay();
section.Add(checkboxElement);
var checkListBindingSet = this.CreateBindingSet<LocationFilterView, CheckListItemViewModel>();
foreach (var checkListItem in ViewModel.As<LocationFilterViewModel>().CheckList)
{
var item = new CheckboxElement(checkListItem.Caption);
checkListBindingSet.Bind(item).For(v => v.Value).To(vm => vm.IsChecked).TwoWay();
section.Add(item);
}
set.Apply();
checkListBindingSet.Apply();
编辑:
也许我必须以更简单的方式问这个问题:
我想在单个页面上显示检查选项列表(不是单选),复选框视图模型保存在主视图模型的列表中。在 Android 中,这可以通过模板布局中的Mvx.MvxListView、MvxItemTemplate 属性和CheckBox 轻松完成。对于 iOS,我只是无法让绑定工作......
【问题讨论】:
标签: c# binding xamarin mvvmcross