C# 数据绑定到MvvMCross中的非ViewModel属性
我有一个MvxListView,它绑定到ViewModel上的一个属性,该属性是一个C# 数据绑定到MvvMCross中的非ViewModel属性,c#,android,data-binding,mvvm,mvvmcross,C#,Android,Data Binding,Mvvm,Mvvmcross,我有一个MvxListView,它绑定到ViewModel上的一个属性,该属性是一个列表 MyClass是一个普通的旧对象,它有一个名为Completed的布尔属性,我已将该属性绑定到列表视图项模板中的CheckedTextView的Checked属性 当我单击列表视图项时,它调用一个命令,该命令调用DoSomething(MyClass项)方法。在DoSomething方法中,我将Completed属性设置为其新值。但是,由于MyClass不是具有RaisePropertyChanged属性的
列表
MyClass
是一个普通的旧对象,它有一个名为Completed
的布尔属性,我已将该属性绑定到列表视图项模板中的CheckedTextView
的Checked属性
当我单击列表视图项时,它调用一个命令,该命令调用DoSomething(MyClass项)
方法。在DoSomething
方法中,我将Completed
属性设置为其新值。但是,由于MyClass
不是具有RaisePropertyChanged
属性的ViewModel,因此选中的属性不会在用户界面中更新
我如何在这个基本POCO上完成数据绑定,以便在Completed
属性更改时更新用户界面
如何在此基本POCO上完成数据绑定,以便在完成的属性更改时更新用户界面
Xaml/C风格的数据绑定依赖于INotifyPropertyChanged——没有它,UI就无法知道它需要更新
因此,要使数据绑定正常工作,您的MyClass
对象不能只是一个POCO-它需要以某种方式实现INotifyPropertyChanged
,例如通过继承MvxNotifyPropertyChanged
或直接实现INotifyPropertyChanged(例如,请参阅)
旁白:MvvmCross还使其他绑定模式成为可能,而不仅仅是
INotifyPropertyChanged
——例如,请参见FieldBinding中的INotifyChanged
——但这仍然需要一些不仅仅是POCO的东西来动态更新绑定