> For the complete documentation index, see [llms.txt](https://docs.radicalframework.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.radicalframework.com/release-2/presentation/iview-resolver/view-life-cycle-events.md).

# 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.
