/// <summary> /// Invoked when this page is about to be displayed in a Frame. /// </summary> /// <param name="e">Event data that describes how this page was reached. The Parameter /// property is typically used to configure the page.</param> protected override void OnNavigatedTo(NavigationEventArgs e) { var contentPage = FinansstyringFrame.Content as Page; if (contentPage != null) { return; } FinansstyringFrame.Navigate(typeof(RegnskabslistePage), null); }
/// <summary> /// Eventhandler, der rejses, når eventet til håndtering af exceptions publiceres. /// </summary> /// <param name="eventArgs">Argumenter fra eventet, der publiceres.</param> public void OnEvent(IHandleExceptionEventArgs eventArgs) { if (eventArgs == null) { throw new ArgumentNullException("eventArgs"); } var validationException = eventArgs.Error as IntranetGuiValidationException; if (validationException != null) { eventArgs.IsHandled = false; return; } var businessException = eventArgs.Error as IntranetGuiBusinessException; if (businessException != null) { eventArgs.IsHandled = false; return; } var offlineRepositoryException = eventArgs.Error as IntranetGuiOfflineRepositoryException; if (offlineRepositoryException != null) { var finansstyringKonfigurationRepository = FinansstyringKonfigurationRepository.Instance; var localeDataStorage = new LocaleDataStorage(finansstyringKonfigurationRepository.LokalDataFil, finansstyringKonfigurationRepository.SynkroniseringDataFil, FinansstyringRepositoryLocale.XmlSchema); localeDataStorage.OnHasLocaleData += LocaleDataStorageHelper.HasLocaleDataEventHandler; localeDataStorage.OnCreateReaderStream += LocaleDataStorageHelper.CreateReaderStreamEventHandler; localeDataStorage.OnCreateWriterStream += LocaleDataStorageHelper.CreateWriterStreamEventHandler; eventArgs.IsHandled = true; MainViewModel.SwitchToLocaleDataStorage(new FinansstyringRepositoryLocale(finansstyringKonfigurationRepository, localeDataStorage)); var contentPage = FinansstyringFrame.Content as Page; if (contentPage != null) { while (contentPage.Frame.CanGoBack) { contentPage.Frame.GoBack(); } return; } FinansstyringFrame.Navigate(typeof(RegnskabslistePage), null); } var repositoryException = eventArgs.Error as IntranetGuiRepositoryException; if (repositoryException != null) { Debug.WriteLine("{0}: {1}", repositoryException.GetType().Name, repositoryException.Message); eventArgs.IsHandled = true; return; } var systemException = eventArgs.Error as IntranetGuiSystemException; if (systemException != null) { Debug.WriteLine("{0}: {1}", systemException.GetType().Name, systemException.Message); eventArgs.IsHandled = true; return; } try { var exception = eventArgs.Error; if (exception == null) { return; } Debug.WriteLine("{0}: {1}", exception.GetType().Name, exception.Message); } finally { eventArgs.IsHandled = true; } }