Skip to content

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 a Task, instead of accepting a callback (and has been renamed to CanCloseAsync).
  • The ViewModelBinder and ViewModelLocator static classes have been collapsed into a single non-static ViewManager.
  • IDeactivate has been split into IDeactivate and IClose.
  • 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).
Clone this wiki locally