У меня есть прикрепленное свойство, которое я использую для нескольких элементов управления в моем приложении.Это свойство подписывается на статическое событие и имеет обработчик события, в котором изменяются некоторые свойства элемента управления, с которым связано присоединенное свойство.
Проблема заключается в том, что некоторые из этих элементов управления воссоздаются (например, они являются частьюItemsControl или Window, который может быть закрыт и повторно открыт) и затем сохранен в памяти через присоединенное свойство.В моей версии WinForms я подписался на событие disposed, чтобы элемент управления знал, когда оно было удалено, а затем отменил подписку на обработчики событий.Однако у WPF нет такого события.Unloaded, который вызывается при его временном удалении (например, через вкладку изменения элемента управления вкладками).
Итак, как я могу удалить эти ссылки на элементы управления, когда элементы управления должны быть удалены, чтобы избежать утечек памяти?В настоящее время, если я обновляю одну из моих страниц, память, используемая моим приложением, продолжает увеличиваться.