我想对我的ViewModel(使用INotifyPropertyChanged)在我的Xamarin表单ContentPage代码背后设置的属性作出反应。处理ViewModel属性更改Xamarin表单内容页面
假设我可以访问我的ViewModel,我“可能”做到这一点,像这样 -
protected override void OnAppearing()
{
base.OnAppearing();
// My base class enabled ViewModel access
ViewModel.PropertyChanged += (sender, e) =>
{
Debug.WriteLine(e.PropertyName + " Changed on ViewModel");
if (e.PropertyName == "Bob")
{
DoSomething();
}
};
我必须考虑从PropertyChanged事件注销的视图模型处理?
有没有其他更优雅的方式来做到这一点?
例如,我已经看到提到的使用Rx扩展实现它的方法,我已经使用MvxPropertyChangedListener和Mvvmcross来帮助解决这类问题。
为了回应@Jesus Angulo,我现在这样做的原因是,当我的项目列表发生更改时,以编程方式在scrollview中填充StackLayout,所以我不必设置任何自定义绑定代码。
感谢您的帮助。
你想用这个做什么?因为这取决于。 –