2014-12-04 2 views
1

ЦельXamarin Forms ListView Update на WillEnterForeground

обновить ListView Xamarin.Forms, когда IOS-приложения выходят на переднем плане

подход

Замкнутого пример я видел найден в образцы моноточек

https://github.com/xamarin/monotouch-samples/blob/master/SimpleBackgroundFetch/SimpleBackgroundFetch/AppDelegate.cs

public override void PerformFetch (UIApplication application, Action<UIBackgroundFetchResult> completionHandler) 
     { 
      UINavigationController navigationController = Window.RootViewController as UINavigationController; 
      UIViewController topViewController = navigationController.TopViewController; 
      if (topViewController is RootViewController) { 
       (topViewController as RootViewController).InsertNewObjectForFetch (completionHandler); 
       UIApplication.SharedApplication.ApplicationIconBadgeNumber++; 
      } else 
       completionHandler (UIBackgroundFetchResult.Failed); 
     } 

Это использование PerformFetch, но WillEnterForegroundMethod выполнит то, что я пытаюсь сделать.

Проблема

Проблема заключается в том, я использую Xamarin.Form страницу и не знаю, как получить доступ к странице или ViewModel страниц из App делегата класса. Есть идеи?

ответ

0

Вы можете зарегистрировать ViewModel с контейнером IoC, когда вы установите его как BindingContext для представления, а затем получите его с помощью этого.

Если вы используете MVVMLight, SimpleIoC входит в этот пакет.

Смежные вопросы