La propiedad AutoVerbMenu no se ha actualizado

Actualización: noviembre 2007

AutoVerbMenu property was not upgraded

En Visual Basic 6.0, la propiedad AutoVerbMenu de un control RichTextBox se utiliza para mostrar un menú de acceso directo con un conjunto de comandos estándar.

En Visual Basic 2008, la propiedad AutoVerbMenu ya no existe. Para proporcionar un menú contextual para un control RichTextBox, utilice un componente ContextMenuStrip. Para crear un menú contextual que duplica la apariencia y comportamiento de AutoVerbMenu, realice el procedimiento siguiente.

Qué se ha de hacer a continuación

  1. En el Explorador de soluciones, haga clic con el botón secundario del mouse (ratón) en el formulario que contiene el control RichTextBox y seleccione Diseñador de vistas.

  2. En el Cuadro de herramientas, haga doble clic en el componente ContextMenuStrip. Se agregará a la Bandeja de componentes en la parte inferior del diseñador.

  3. En la ventana Propiedades, seleccione la propiedad (Name) y cámbiela por AutoVerbMenu.

  4. Seleccione la propiedad ShowImageMargin y establézcala en False.

  5. Seleccione la propiedad Itemsy, a continuación, haga clic en el botón de puntos suspensivos para abrir el Editor de la colección de elementos.

  6. Haga clic en el botón Agregar para agregar un objeto ToolStripMenuItem.

  7. En la cuadrícula Propiedad, seleccione la propiedad (Name) y cámbiela por Deshacer.

  8. Seleccione la propiedad Text y cámbiela a Deshacer.

  9. Seleccione la propiedad ShortcutKeys, haga clic en el botón de lista desplegable, active la casilla Ctrl y seleccione Z en la lista Clave.

  10. En la lista desplegable Seleccionar elemento y agregarlo a la siguiente lista, seleccione Separator y, a continuación, haga clic en el botón Agregar.

  11. En la lista desplegable Seleccionar elemento y agregarlo a la siguiente lista, seleccione MenuItem y, a continuación, haga clic en el botón Agregar cuatro veces.

  12. Para cada uno de los nuevos elementos de menú, establezca las propiedades como sigue:

    1. Para el primer elemento, establezca las propiedades (Name) y Text en Cortar y la propiedad ShortcutKeys en Ctrl + X.

    2. Para el segundo elemento, establezca las propiedades (Name) y Text en Copiar y la propiedad ShortcutKeys en Ctrl + C.

    3. Para el tercer elemento, establezca las propiedades (Name) y Text en Pegar y la propiedad ShortcutKeys en Ctrl + V.

    4. Para el cuarto elemento, establezca las propiedades (Name) y Text en Eliminar y la propiedad ShortcutKeys en Supr.

    Haga clic en Aceptar para cerrar el Editor de la colección de elementos.

  13. En la ventana Propiedades, haga clic en el botón Eventos y, a continuación, haga doble clic en el evento Opened para abrir el Editor de código. En el procedimiento de evento AutoVerbMenu_Opened, escriba el código siguiente.

    ' Determine if Undo should be enabled.
    If RichTextBox1.CanUndo = True Then
        Undo.Enabled = True
    Else
        Undo.Enabled = False
    End If
    ' Determine if Cut, Copy, and Paste should be enabled.
    If RichTextBox1.SelectedText <> "" Then
        Cut.Enabled = True
        Copy.Enabled = True
        Delete.Enabled = True
    Else
        Cut.Enabled = False
        Copy.Enabled = False
        Delete.Enabled = False
    End If
    ' Determine if Paste should be enabled
    If My.Computer.Clipboard.ContainsText = True Then
        Paste.Enabled = True
    Else
        Paste.Enabled = False
    End If
    
  14. En la lista desplegable Nombre de clase, seleccione Undo. En la lista desplegable Nombre de método, seleccione Click. En el controlador de eventos Undo_Click, agregue el código siguiente.

    ' Undo the last edit operation in the RichTextBox
    If RichTextBox1.CanUndo Then
        RichTextBox1.Undo()
    End If
    
  15. En la lista desplegable Nombre de clase, seleccione Cut. En la lista desplegable Nombre de método, seleccione Click. En el controlador de eventos Cut_Click, agregue el código siguiente.

    ' Cut the selected text and place it on the clipboard.
    If RichTextBox1.SelectedText <> "" Then
        RichTextBox1.Cut()
    End If
    
  16. En la lista desplegable Nombre de clase, seleccione Copy. En la lista desplegable Nombre de método, seleccione Click. En el controlador de eventos Copy_Click, agregue el código siguiente:

    ' Copy the selected text and place it on the clipboard.
            If RichTextBox1.SelectedText <> "" Then
                RichTextBox1.Copy()
            End If
    
  17. En la lista desplegable Nombre de clase, seleccione Paste. En la lista desplegable Nombre de método, seleccione Click. En el controlador de eventos Paste_Click, agregue el código siguiente.

    ' Paste the contents of the clipboard at the cursor location.
    If My.Computer.Clipboard.ContainsText Then
        RichTextBox1.Paste()
    End If
    
  18. En la lista desplegable Nombre de clase, seleccione Delete. En la lista desplegable Nombre de método, seleccione Click. En el controlador de eventos Delete_Click, agregue el código siguiente.

    ' Delete the selected text.
    If RichTextBox1.SelectedText <> "" Then
        RichTextBox1.SelectedText = ""
    End If
    
  19. Vuelva a la vista Diseño y seleccione el control RichTextBox.

  20. En la ventana Propiedades, haga clic en el botón Propiedades. Seleccione la propiedad ContextMenuStrip y, a continuación, seleccione AutoVerbMenu en la lista desplegable.

Vea también

Referencia

Información general sobre el control RichTextBox (formularios Windows Forms)

Información general sobre el control ContextMenuStrip