/// <summary> /// Called by Prism when navigating to the current document. /// </summary> /// <param name="navigationContext">The navigation context.</param> public void OnNavigatedTo(NavigationContext navigationContext) { if (navigationContext == null) { throw new ArgumentNullException(nameof(navigationContext)); } if (!String.IsNullOrEmpty(uriQueryString) && uriQueryString.Equals(navigationContext.Uri.OriginalString, StringComparison.OrdinalIgnoreCase)) { return; } uriQueryString = navigationContext.Uri.OriginalString; foreach (KeyValuePair <string, object> parameter in navigationContext.Parameters) { if (parameter.Key.Equals("Title", StringComparison.Ordinal)) { Title = parameter.Value?.ToString(); continue; } if (parameter.Key.Equals("NavigationId", StringComparison.Ordinal)) { NavigationId = parameter.Value?.ToString(); continue; } if (parameter.Key.Equals("Navigation", StringComparison.Ordinal)) { string[] history = NavigationTarget.GetNavigationHistory(parameter.Value?.ToString()); foreach (string target in history) { if (!String.IsNullOrEmpty(target)) { navigationHistory.Add(new NavigationTarget(target)); } } } } RaiseActivation(); }
/// <summary> /// Called by Prism when navigating to the current document. /// </summary> /// <param name="navigationContext">The navigation context.</param> public void OnNavigatedTo(NavigationContext navigationContext) { if (!String.IsNullOrEmpty(uriQueryString) && uriQueryString.Equals(navigationContext.Uri.OriginalString)) { return; } uriQueryString = navigationContext.Uri.OriginalString; foreach (KeyValuePair <string, object> parameter in navigationContext.Parameters) { if (parameter.Key.Equals("Title")) { Title = parameter.Value?.ToString(); continue; } if (parameter.Key.Equals("NavigationId")) { NavigationId = parameter.Value?.ToString(); continue; } if (parameter.Key.Equals("Navigation")) { string[] history = NavigationTarget.GetNavigationHistory(parameter.Value?.ToString()); foreach (string target in history) { if (!String.IsNullOrEmpty(target)) { navigationHistory.Add(new NavigationTarget(target)); } } } } RaiseActivation(); }