public static void OnCanExecuteTableCommand(object target, CanExecuteRoutedEventArgs e) { RichTextEditor control = (RichTextEditor)target; RichTextBox richTextBox = control.richControl; e.CanExecute = false; if (Helper.HasAncestor(richTextBox.Selection.Start, typeof(TableCell))) { e.CanExecute = true; } }
public static void OnCanExecuteInsertTable(object target, CanExecuteRoutedEventArgs e) { e.CanExecute = true; RichTextEditor control = (RichTextEditor)target; RichTextBox richTextBox = control.richControl; TextPointer insertionPosition = richTextBox.Selection.Start; // Disable tables inside lists and hyperlinks if (Helper.HasAncestor(insertionPosition, typeof(List)) || Helper.HasAncestor(insertionPosition, typeof(Hyperlink))) { e.CanExecute = false; } }