async void watcher_Updated(PnpObjectWatcher sender, PnpObjectUpdate args) { watcher.Stop(); await this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async () => { await Task.Delay(5000); var viewModel = new MainPageViewModel(); await viewModel.Init(); this.ViewModel = viewModel; }); }
/// <summary> /// Invoqué lorsque cette page est sur le point d'être affichée dans un frame. /// </summary> /// <param name="e">Données d'événement décrivant la manière dont l'utilisateur a accédé à cette page. /// Ce paramètre est généralement utilisé pour configurer la page.</param> protected override async void OnNavigatedTo(NavigationEventArgs e) { // TODO: préparer la page pour affichage ici. var viewModel = new MainPageViewModel(); if (await viewModel.Init()) { this.ViewModel = viewModel; } else { watcher = PnpObject.CreateWatcher(PnpObjectType.DeviceContainer, new string[] { "System.Devices.Connected" }, String.Empty); watcher.Updated += watcher_Updated; watcher.Start(); } }
// TODO: si votre application comporte plusieurs pages, assurez-vous que vous // gérez le bouton Retour physique en vous inscrivant à l’événement // Événement Windows.Phone.UI.Input.HardwareButtons.BackPressed. // Si vous utilisez le NavigationHelper fourni par certains modèles, // cet événement est géré automatiquement. /*async private void BouConnexion_Tapped(object sender, TappedRoutedEventArgs e) { BouConnexion.Visibility = Windows.UI.Xaml.Visibility.Collapsed; var viewModel = this.ViewModel; this.ViewModel = null; await viewModel.Init(); this.ViewModel = viewModel; BouConnexion.Visibility = Windows.UI.Xaml.Visibility.Visible; }*/ async private void Button_Click_1(object sender, Windows.UI.Xaml.RoutedEventArgs e) { Button_Click.Visibility = Windows.UI.Xaml.Visibility.Collapsed; var viewModel = this.ViewModel; this.ViewModel = null; await viewModel.Init(); this.ViewModel = viewModel; Button_Click.Visibility = Windows.UI.Xaml.Visibility.Visible; }