.net - quitar - eliminar entradas del menu contextual de windows 10
agregar elemento de menĂº al menĂº contextual predeterminado (1)
No es demasiado complicado volver a implementar el menú contextual de RichTextBox con sugerencias de ortografía, Cortar, Pegar, etc.
Conecte el evento de apertura del menú contextual de la siguiente manera:
AddHandler(RichTextBox.ContextMenuOpeningEvent, new ContextMenuEventHandler(RichTextBox_ContextMenuOpening), true);
Dentro del controlador de eventos, crea el menú contextual que necesites. Puede volver a crear los elementos del menú del menú contextual existentes con lo siguiente:
private IList<MenuItem> GetSpellingSuggestions() { List<MenuItem> spellingSuggestions = new List(); SpellingError spellingError = myRichTextBox.GetSpellingError(myRichTextBox.CaretPosition); if (spellingError != null) { foreach (string str in spellingError.Suggestions) { MenuItem mi = new MenuItem(); mi.Header = str; mi.FontWeight = FontWeights.Bold; mi.Command = EditingCommands.CorrectSpellingError; mi.CommandParameter = str; mi.CommandTarget = myRichTextBox; spellingSuggestions.Add(mi); } } return spellingSuggestions; } private IList<MenuItem> GetStandardCommands() { List<MenuItem> standardCommands = new List(); MenuItem item = new MenuItem(); item.Command = ApplicationCommands.Cut; standardCommands.Add(item); item = new MenuItem(); item.Command = ApplicationCommands.Copy; standardCommands.Add(item); item = new MenuItem(); item.Command = ApplicationCommands.Paste; standardCommands.Add(item); return standardCommands; }
Si hay errores de ortografía, puede crear Ignorar todo con:
MenuItem ignoreAllMI = new MenuItem(); ignoreAllMI.Header = "Ignore All"; ignoreAllMI.Command = EditingCommands.IgnoreSpellingError; ignoreAllMI.CommandTarget = textBox; newContextMenu.Items.Add(ignoreAllMI);
Agregue separadores según sea necesario. Añádelos a los nuevos elementos del menú contextual y luego agrega tus nuevos ítems de menú brillantes.
Sin embargo, voy a seguir buscando la manera de obtener el menú contextual real, ya que esto es relevante para algo en lo que estaré trabajando en el futuro cercano.
Me gustaría agregar un elemento de menú al ContextMenu
predeterminado de un RichTextBox
.
Podría crear un nuevo menú contextual pero luego perderé las sugerencias de revisión ortográfica que aparecen en el menú predeterminado.
¿Hay alguna manera de agregar un artículo sin volver a implementar todo?