Обычно страницы отображаются по одной за раз, поэтому, если вы хотите передавать данные между ними во время навигации, вы должны сделать это, используя второй параметр метода Frame.Navigate
:
this.Frame.Navigate(typeof(SecondPage), someString);
ОднакоЕще более удачным решением является использование какой-либо инфраструктуры MVVM, в которой есть служба навигации на основе ViewModels, срок службы которой больше, чем у элементов управления / страницы UI. Такие фреймворки, как MvvvmCross, MvvmLight, SimpleMvvm или Reactive UI, могут помочь вам написать такую логику более простым способом.
В вашем случае вы можете сохранить обновленное состояние в модели представления, которая затем будет использоваться обоимистраницы, поэтому любое изменение будет отражено в обоих местах. Вместо прямой записи в свойство Text
TextBlocks
, вы реализуете модель представления со свойством string
, которая будет вызывать событие PropertyChanged
из интерфейса INotifyPropertyChanged
. Шаблон MVVM хорошо описан во многих руководствах, поэтому я советую вам в него углубиться.