Он будет утилизирован GC, когда ничто не заставит его бодрствовать.Этот DispatcherTimer сохраняет бодрствование, даже если он был создан страницей.В прошлом я предполагал, что на DispatcherTimer ссылается сам Dispatcher, и поэтому он не может выполнить очистку или что-то в этом духе.
Для демонстрации добавьте метод финализации
#if DEBUG
~MyPage() {
System.Diagnostics.Debug.WriteLine("Killing MyPage");
}
#endif
Затем добавьте кнопку где-нибудь на главной странице, чтобы заставить GC.Collect()
Если вы выключите таймер в OnNavigatedFrom
, ваша страница будет очищена, если вы этого не сделаете, она не будет.
Я еще не проверял это с Mango, чтобы убедиться, что он умнее, но с инструментами 7.0 мне пришлось немного поработать, чтобы обойти это.