void OnPageNavigating(object sender, System.Windows.Navigation.NavigatingCancelEventArgs e)
{
this.enabledStates = new Dictionary<BindableApplicationBarButton, BindingExpression>();
if (!e.Uri.OriginalString.Contains("app://external/") && e.NavigationMode != System.Windows.Navigation.NavigationMode.Back)
{
foreach (var item in this.Buttons)
{
this.enabledStates.Add(item, item.GetBindingExpression(BindableApplicationBarButton.IsEnabledProperty));
item.IsEnabled = false;
}
this.page.NavigationService.Navigating -= this.OnPageNavigating;
}
}