<强>1。绑定(bind)列表
我想知道如何将 ObservableCollection 绑定(bind)到 Radiogroup:
new Section(){
new RootElement("Mandanten", new RadioGroup("mandanten", 2)) {
new Section(){
new RadioElement("Kupus", "mandanten"),
new RadioElement("Kajmak", "mandanten")
}
}
}
正如你在这里看到的,我正在手动创建 2 个项目/元素,但我错过了诸如“ItemsSource”之类的东西。 如果不可能,您会给我什么建议?使用witch Control(绑定(bind)列表)?
<强>2。命令绑定(bind)
据我所知,MonoTouch.Dialog 中没有“按钮”。所以我看到我们将使用“StringElement”。 我尝试过,但点击“按钮”后没有任何反应:
new StringElement("Login").Bind(this, "SelectedCommand LoginCommand")
我不确定出了什么问题,也许我需要在这里使用新的“变体”,如下所示:
new EntryElement ("User", "Loginuser", ViewModel.User).Bind(target, v => v.Value, t => t.User),
但我不确定如何构建类似的代码来绑定(bind)特定“stringelement”的命令(在这种情况下 - 带有 ontap 事件的按钮)..
感谢任何帮助!
最佳答案
1。绑定(bind)列表
绑定(bind)动态 ObservableCollection
列表的示例位于 https://github.com/slodge/MvvmCross-Tutorials/blob/master/DialogExamples/DialogExamples.Touch/Views/ThirdView.cs 中。 - 它使用 https://github.com/slodge/MvvmCross-Tutorials/tree/master/DialogExamples/DialogExamples.Touch/BindableElements 中的一些自定义元素- 基于 https://github.com/asednev/MvvmCross.AlexeysExtensions 中的样本
由于 Radio 列表的内部实现方式,我不知道相同的 ObservableCollection
绑定(bind)方法是否适用于 Radio 列表 - 有人需要原型(prototype)设计和实验来解决这个问题。然而,一个简单的固定 radio 列表显示在https://github.com/slodge/MvvmCross-Tutorials/blob/master/DialogExamples/DialogExamples.Touch/Views/FirstView.cs中。
2。命令绑定(bind)
new Section("Action")
{
new StringElement("Second").Bind(bindings, element => element.SelectedCommand, vm => vm.GoSecondCommand),
new StringElement("Bindable Elements").Bind(bindings, element => element.SelectedCommand, vm => vm.BindableElementsCommand)
},
关于binding - 将 Mvvmcross 绑定(bind)与 MonoTouch.Dialog(列表和命令)结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18384073/