What is the "Order of Operations" (OOP) for Data Binding in Caliburn.Micro Xamarin Android (Mono.Android)?
PS: a tutorial that explains/compares how binding occurs in Caliburn Micro Standard/WPF, Caliburn Micro Android & Caliburn Micro iOS (ie Caliburn.Micro Xamarin) would be very useful and a nice introduction into Caliburn Micro Xamarin.
For regular Caliburn.Micro the OOP for Binding is (correct me if I am wrong):
- Declare Field in ViewModel
- On Field Set: call
NotifyOfPropertyChange(..)
- Bind View to ViewModel using the XAML attribute
x:Name
I've inspected the example projects Hello.Xamarin
and HubBrowser
and I think I have a bit of an idea how it works but it looks like there is ALOT of setup required. For Caliburn.Micro Xamarin Android is the Binding OOP something like...?
- Extend the
NotifyPropertyChanged
method. Not sure why...maybe so it works for Android? We produce a static class calledNotifyPropertyChangedExtensions
- Declare Field in ViewModel (same as standard CM)
- On Field Set: call
NotifyOfPropertyChange(..)
(same as standard CM) - Give all View widgets a unique id
android:id
- On View (Activity) creation: bind View widgets to ViewModel Fields somehow??