У меня есть «мастер» WPF, в котором я использую объекты PageFunction для отображения различных страниц в мастере. Некоторые из этих страниц используют ссылки на объекты в других сборках в приложении, поэтому пользователь может выбирать «пакеты», которые он хочет включить в сгенерированный вывод. В функции страницы у меня установлен флаг поддержания активности, установленный в значение true, чтобы при нажатии пользователем кнопки отмены или завершения работы мастера я мог получать результаты мастера и соответствующие данные, выбранные пользователем.
Проблема в том, что страницы мастера никогда не исчезают даже после закрытия области, в которой они были созданы. Таким образом, когда я пытаюсь удалить из коллекции один из объектов, на которые ссылался мастер, это вызывает на странице мастера выдается исключение. Кажется, я не могу найти способ исправить эту проблему, не установив флаг KeepAlive в false, но это лишает возможности собирать пользовательские данные из мастера.
Есть идеи?
Спасибо!