Silverlight с фреймами и страницами. Как получить доступ к коллекции ссылок на уже созданные страницы? - PullRequest
1 голос
/ 10 декабря 2011

Моя главная страница в Silverlight имеет один фрейм, и внутри него я могу отображать содержимое любой из нескольких страниц, перемещаясь между ними. Всем страницам присвоено свойство NavigationCacheMode = "Required", поэтому все они кэшируются механизмом навигации. Если навигационная система кэширует экземпляр каждой страницы, к которой я перехожу, это означает, что она сохраняет эти экземпляры в каком-то списке или коллекции. Как я могу получить доступ к этой коллекции ссылок на уже созданные страницы?

Моя цель упрощена: при условии, что я уже перешел на страницы A и B, я хочу получить доступ к элементам управления на странице B со страницы A.

Спасибо.

1 Ответ

1 голос
/ 11 декабря 2011

Страницы, необходимые для кэширования, поддерживаются, но NavigationService в частном словаре.Публичный доступ к содержимому словаря не предоставляется.

Если вы действительно хотите это сделать, вы можете сами управлять этим с помощью событий Load и Unload страниц, используемых для добавления / удаления экземпляров страниц в некоторыхПубличный статический словарь.

Однако я хотел бы предположить, что это не очень хороший шаблон проектирования, когда одна страница напрямую манипулирует элементами управления другой.Лучше было бы создать общедоступный статический класс, через который страницы могут общаться, фактически не зная друг о друге.

...