-
-
Notifications
You must be signed in to change notification settings - Fork 144
Comparison to Caliburn.Micro
Shuhua Gao edited this page Nov 20, 2020
·
12 revisions
Although Stylet is based on, and inspired by, Caliburn.Micro, it does have quite a lot of differences. These are summarised below.
- Stylet requires .NET 4.5, and has dropped support for Windows Phone and Silverlight. The View-First approach has also been dropped. This leads to a significant reduction in complexity.
- Conventions have been largely removed. Binding is done explicitly.
- ActionMessages have been replaced with Actions. This has removed the dependency on System.Windows.Interactivity, and is overall a more powerful and intuitive approach.
-
IGuardClose.CanClose
has been rewritten to return aTask
, instead of accepting a callback (and has been renamed toCanCloseAsync
). - The
ViewModelBinder
andViewModelLocator
static classes have been collapsed into a single non-staticViewManager
. -
IDeactivate
has been split intoIDeactivate
andIClose
. - A powerful IoC container (StyletIoC) is provided and configured by default.
- A Window's lifecycle is now affected when it's minimized / restored.
- Stylet allows you to specify how to dispatch PropertyChanged events.
- Stylet introduces
Conductor<T>.Collections.Navigation
. - Stylet includes a MessageBox implementation.
- Stylet adds ValidatingModelBase, which derives from PropertyChangedBase and is subclassed by Screen. This allows easy validation of ViewModels using the validation library of your choice.
- Unfortunately, Caliburn.Micro is no longer actively maintained (see the announcement published on 18 Jun 2020).
- Introduction
- Quick Start
- Bootstrapper
- ViewModel First
- Actions
- The WindowManager
- MessageBox
- The EventAggregator
- PropertyChangedBase
- Execute: Dispatching to the UI Thread
- Screens and Conductors
- BindableCollection
- Validation using ValidatingModelBase
- StyletIoC
- The ViewManager
- Listening to INotifyPropertyChanged
- Design Mode Support
- Logging
- Misc