Windows Phone 7 - Использование панели приложений и Prism (или MVVM) - PullRequest
1 голос
/ 17 октября 2010

Я играю с WP7 SDK и бета-версией Prism for WP7 и столкнулся с проблемой, которую не могу понять (или даже обойти).

Прежде всего, я новичок в WPF / Silverlight / WP7 и Prism, поэтому я мог упустить из виду кое-что очень очевидное.

Итак, у меня есть страница оболочки, в которой есть мой регион, в котором хранятся мои страницы с контентом, и все это прекрасно работает!Теперь моя проблема в том, что у меня есть элемент управления настройками, который позволит пользователям редактировать настройки приложения (имена, местоположения и т. Д.).Теперь я могу заставить эту страницу работать без проблем с помощью кнопки на одном из моих элементов управления, которая переведет менеджер области в элемент управления.

Тем не менее, я хотел бы использовать панель приложения на телефоне, чтобы иметь кнопку, но я не могу до конца жизни понять, как получить доступ к моему объекту модели изнутри страницы, которая открываетсяПанель приложения нажмите.Я могу только сделать NavigationService.Navigate () на странице настроек, но объекты PhoneApplicationPage в WP7 не позволяют внедрять конструкторы (конструкторы должны быть без параметров), поэтому я не могу передать экземпляр объекта таким способом.

Итак, мой вопрос: как я могу получить доступ (или передать) объекты между страницами или элементами управления?

Спасибо!

1 Ответ

1 голос
/ 17 октября 2010

В примерах они используют эту технику, чтобы установить контекст данных формы после перехода к другой форме:

NavigationService.Navigate(new Uri("/Page2.xaml", UriKind.Relative));
FrameworkElement root = Application.Current.RootVisual as FrameworkElement;
root.DataContext = some_object;
...