Radical Documentation
View on GitHub
release-1
release-1
  • Home
  • Presentation
    • AbstractViewModel
    • Conventions
      • Bootstrap Conventions
      • Runtime Conventions
      • Conventions override
    • Commands and DelegateCommand
    • IViewResolver
      • Default view behaviors
      • view life cycle events
        • Callback expectations
        • notify messages
    • Message broker MVVM built-in messages
    • Application boot process demystified
      • Application shutdown
      • Singleton applications
    • AbstractMementoViewModel
      • Simple ViewModel graphs
      • Collections and complex ViewModel graphs
    • Validation and Validation Services
  • UI Composition
    • UI Composition
      • Region content lifecycle
      • TabControl region
      • Create a custom region
  • Concepts
    • Inversion of Control
      • Castle Windsor
      • Autofac
      • Unity (v2 & v3)
      • Puzzle Container
    • Entities
      • Property System
    • Messaging and Message Broker
      • POCO messages
      • Standalone message handlers
    • Observers
      • PropertyObserver
      • MementoObserver
      • BrokerObserver
  • Memento
    • Change Tracking Service
      • MementoEntity and MementoEntityCollection
      • Handling change tracking:
        • Simple model
        • Collections
        • Complex objects graph
      • Atomic operations
      • Change Tracking Service API
      • Property Metadata for the ChangeTrackingService
      • Handling collection sync
  • Behaviors
    • DataGrid Behaviors
    • Password
    • Generic routed event handler to command behavior
    • Overlay adorner
      • Busy status manager
    • TextBox behaviors:
      • Command
      • Auto select
      • DisableUndoManager
  • Markup Extensions
    • Editor binding
    • Auto Command binding
  • How to
    • Get the view of a given view model
    • Bi-directional communication between different windows/views
    • Handle the busy status during async/long running operations
    • Implement a customer improvement program
    • Manage focus
    • Create a splash screen
    • Access view model after view is closed
    • Intercept ViewModels before it's used
Powered by GitBook
On this page
  • The View is a Window
  • The View is a FrameworkElement (e.g. a UserControl)
  1. Presentation
  2. IViewResolver

view life cycle events

We have seen that the infrastructure has a way, by default based on behaviors, to notify a ViewModel that its own View state is changing.

The View is a Window

If the view is a window we have several state that can be handled/intercepted by the coupled ViewModel:

  • Loaded;

  • Activated;

  • Shown;

  • Closing;

  • Closed;

The View is a FrameworkElement (e.g. a UserControl)

If the view is a user control the only state we can intercept is the Loaded event.

PreviousDefault view behaviorsNextCallback expectations

Last updated 5 years ago