Вряд ли в WPF есть метод Dispose
. Подавляющее большинство классов инкапсулируют чисто управляемую информацию. Вы можете прикрепить объект к дереву (например, с помощью метода Children.Add
) и снова удалить его - так работает управление состоянием. Он точно не вписывается в шаблон IDisposable
, поскольку после удаления элемента управления его можно добавить снова, тогда как Dispose
означает навсегда (хотя вы можете использовать Dispose
для управления им в дополнение к Add
/ Remove
методы).
Обсуждение этого на форумах Microsoft.
Есть несколько вещей, которые должны быть IDisposable
, но не такие, как DispatcherTimer
, и ничто не мешает вам реализовать IDisposable
в ваших собственных классах. Вам решать когда звонить Dispose
; в основном, когда вы знаете, что больше не будете использовать объект.
Для Window
вы просто звоните Close
, чтобы закрыть его, а WPF позаботится обо всем остальном.