Могу ли я получить доступ к главной странице из события приложения?

#events #windows-phone-7

#Мероприятия #windows-phone-7

Вопрос:

Я хочу получить доступ к свойству главной страницы моего приложения изнутри Application_Launching события. Безопасно ли это делать? Существует ли страница (-объект) на данный момент?

Ответ №1:

Модель жизненного цикла приложения выглядит примерно так:

  1. Конструктор класса приложения.
  2. App.InitializePhoneApplication метод (здесь создается PhoneApplicationFrame содержимое страницы, на которой размещается).
  3. App.Application_Launching .
  4. Конструктор страницы для начальной страницы.
  5. App.CompleteInitializePhoneApplication (это первый случай, когда вы можете получить доступ к странице вне класса Page (из RootFrame.Content , хотя ее визуальное дерево еще не будет создано).
  6. Событие страницы Loaded (на этом этапе визуальное дерево для страницы загружено).

Чего вы пытаетесь достичь? Вы могли бы установить значение в изолированном хранилище и прочитать его на странице или предоставить значение как свойство в вашем классе приложения.

Комментарии:

1. Спасибо, Дерек, это указало мне правильное направление. Что я пытался сделать, так это инициализировать визуальные элементы страницы на основе сохраненных данных. Но этот код лучше разместить внутри моей страницы. Правильными местами для сохранения и загрузки данных, по-видимому, являются OnNavigatedFrom и OnNavigatedTo . Хотя я мог бы также использовать Loaded событие вместо OnNavigatedTo (?)