Эквивалент onResume () в Windows Phone 7 - PullRequest
3 голосов
/ 10 августа 2011

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

Примечание. Шаг жизненного цикла, который я ищу, не называетсякогда страница вызывается с помощью init (), только когда я перешел (назад) или пользователь принял телефонный звонок, а затем повторно открыл приложение (оставив эту же страницу открытой)

Заранее спасибо

1 Ответ

3 голосов
/ 10 августа 2011

то, что вы ищете, называется Tombstoning, и вы можете найти отличную статью на http://wildermuth.com/2010/10/17/Architecting_WP7_-_Part_5_of_10_Tombstoning

События:

  • Запуск (открывается из плитки)
  • Деактивировано (пользователь принимает вызов или что-то в этом роде)
  • Активирован (обратно с звонка)
  • Закрытие (оставляет приложение через кнопку «Назад»)

Вы ищете Активированное событие. Это в вашем файле App.xaml.cs / vb. Подключитесь к событию и обновите модель данных. Когда ваша страница привязана к этой модели, она получит данные.

Если вы не используете MVVM и не можете по-настоящему обновить это событие, вы можете сделать это с помощью свойства PhoneApplicationService.Current.StartupMode. Он имеет две опции Activate (что вы ищете) и Launch (загружается только что из плитки). Это будет выглядеть примерно так:

Init()
{
    if (PhoneApplicationService.Current.StartupMode ==  StartupMode.Activate)
    {
          Refresh()
    }
}
...