WPF обрабатывает события времени существования объектов, предоставляя уведомления об этапах их жизненного цикла. 4 Для элементов уровня фреймворка WPF (визуальные объекты) реализованы три распространённых события существования: Initialized, Loaded и Unloaded. 14
Событие Initialized возникает после создания экземпляра элемента и установки его свойств в соответствии с разметкой XAML. 3 В этот момент элемент уже инициализирован, но другие части окна могут ещё не быть инициализированными. 3 Ещё не применены стили и привязка данных. 3
Событие Loaded вызывается до окончательной отрисовки, но после того, как система макета вычисляет все необходимые значения для отрисовки. 1 Loaded означает, что логическое дерево, в котором содержится элемент, является полным и подключено к источнику визуализации. 1
Событие Unloaded вызывается последним и инициируется либо источником презентации, либо при удалении визуального родителя. 1 Когда Unloaded вызывается и обрабатывается, элемент, который является родительским элементом источника события, возможно, уже не установлен, то есть привязка данных, ссылки на ресурсы и стили не могут быть заданы в их обычные или последние известные значения во время выполнения. 1
Кроме того, для некоторых объектов WPF предусмотрены специальные события времени существования, которые применяются к элементам окна, узлам навигации или объектам приложений. 4