Comparison to Caliburn.Micro - canton7/Stylet GitHub Wiki
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).