2

1.绑定列表

我想知道如何将 ObservableCollection 绑定到 Radiogroup:

new Section(){
                new RootElement("Mandanten", new RadioGroup("mandanten", 2)) {
                    new Section(){
                        new RadioElement("Kupus", "mandanten"),
                        new RadioElement("Kajmak", "mandanten")
                    }
                }
            }

正如您在此处看到的,我正在手动创建 2 个项目/元素,但我错过了诸如“ItemsSource”之类的东西。如果不可能,你会给我什么建议?使用女巫控制(绑定列表)?

2. 命令绑定

我看到 MonoTouch.Dialog 中没有“按钮”。所以我看到我们将使用“StringElement”。我试过了,但点击“按钮”后什么也没发生:

new StringElement("Login").Bind(this, "SelectedCommand LoginCommand")

我不确定出了什么问题,也许我需要在这里使用新的“变体”,就像这样:

new EntryElement ("User", "Loginuser", ViewModel.User).Bind(target, v => v.Value, t => t.User),

但我不确定如何构建类似的代码来绑定特定“字符串元素”的命令(在这种情况下 - 带有 ontap 事件的按钮)..

任何帮助表示赞赏!

4

1 回答 1

4

1.绑定列表

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的示例

由于收音机列表在内部实现的方式,我不知道相同的ObservableCollection绑定方法是否适用于收音机列表 - 有人需要原型和实验来解决这个问题。但是,一个简单的固定单选列表显示在https://github.com/slodge/MvvmCross-Tutorials/blob/master/DialogExamples/DialogExamples.Touch/Views/FirstView.cs

2. 命令绑定

请参阅以下示例:https ://github.com/slodge/MvvmCross-Tutorials/blob/master/DialogExamples/DialogExamples.Touch/Views/FirstView.cs

                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)  
                    },
于 2013-08-22T18:07:00.067 回答