private void DetachButton(BindableApplicationBarButton button) { if (button.GetBindingExpression(DataContextProperty) == null && button.GetValue(DataContextProperty) == this.DataContext) { button.DataContext = null; } button.Detach(); } #endregion