Compartir a través de


Cómo: Agregar controles Bookmark a documentos de Word

Actualización: Julio de 2008

Se aplica a

La información de este tema sólo se aplica a los proyectos y versiones especificados de Visual Studio Tools para Office de Microsoft Office.

Proyectos de nivel de documento

  • Word 2007

  • Word 2003

Proyectos de nivel de aplicación

  • Word 2007

Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto.

En los proyectos en el nivel del documento, puede agregar controles Bookmark al documento en el proyecto en tiempo de diseño o en tiempo de ejecución. A partir de Visual Studio 2008 Service Pack 1 (SP1), también puede agregar controles Bookmark en tiempo de ejecución a cualquier documento abierto utilizando un complemento en el nivel de la aplicación para Word 2007.

En este tema se describen las tareas siguientes:

  • Agregar controles Bookmark en tiempo de diseño

  • Agregar controles Bookmark en tiempo de ejecución en un proyecto en el nivel del documento

  • Agregar controles Bookmark en tiempo de ejecución en un proyecto en el nivel de la aplicación

Para obtener más información sobre los controles Bookmark, vea Bookmark (Control).

Agregar controles Bookmark en tiempo de diseño

Hay varias maneras de agregar controles Bookmark al documento en tiempo de diseño en un proyecto en el nivel del documento:

  • Desde el Cuadro de herramientas de Visual Studio.

    Puede arrastrar el control Bookmark desde el Cuadro de herramientas hasta su documento. Puede que elija hacerlo de esta manera si ya está utilizando el Cuadro de herramientas para agregar controles de formularios Windows Forms a su documento.

  • Desde dentro de Word.

    Puede agregar el control Bookmark al documento de la misma manera que agregaría el objeto de marcador nativo. La ventaja de agregarlo de esta manera es que puede asignar un nombre al control cuando lo crea.

  • Desde la ventana Orígenes de datos.

    Puede arrastrar el control Bookmark hasta su documento desde la ventana Orígenes de datos. Esto resulta útil cuando desee enlazar el control a los datos simultáneamente. Puede agregar el control host de la misma manera que agregaría un control de formulario Windows Forms desde la ventana Orígenes de datos. Para obtener más información, vea Enlace de datos y formularios Windows Forms.

Nota:

Es posible que su equipo muestre nombres o ubicaciones diferentes para algunos de los elementos de la interfaz de usuario de Visual Studio incluidos en las instrucciones siguientes. La edición de Visual Studio que se tenga y la configuración que se utilice determinan estos elementos. Para obtener más información, vea Valores de configuración de Visual Studio.

Para agregar un control Bookmark a un documento desde el Cuadro de herramientas

  1. Abra el Cuadro de herramientas y haga clic en la ficha Controles de Word.

  2. Arrastre un control Bookmark hacia el documento.

    Aparece el cuadro de diálogo Agregar marcador.

  3. Seleccione el texto o los demás elementos que desee incluir en el marcador.

  4. Haga clic en Aceptar.

    Si no desea conservar el nombre predeterminado del marcador, puede cambiarlo en la ventana Propiedades.

Para agregar un control Bookmark a un documento de Word

  1. En el documento que se hospeda en el diseñador de Visual Studio, coloque el cursor donde desea agregar el marcador o seleccione el texto que el marcador debe enmarcar.

  2. Realice una de las operaciones siguientes:

    • En Word 2003: En el menú Insertar, haga clic en Marcador.

    • En Word 2007: En la ficha Insertar de la cinta de opciones, en el grupo Vínculos, haga clic en el botón Marcador.

  3. En el cuadro de diálogo Marcador, escriba el nombre del nuevo marcador y haga clic en Agregar.

Agregar controles Bookmark en tiempo de ejecución en un proyecto en el nivel del documento

Puede agregar controles Bookmark al documento mediante programación en tiempo de ejecución con métodos de la propiedad Controls de la clase ThisDocument del proyecto. Existen dos sobrecargas de método que puede utilizar para agregar un control Bookmark de las maneras siguientes:

Los controles Bookmark creados de forma dinámica no se conservan en el documento como controles host cuando éste se cierra. Sin embargo, un objeto Microsoft.Office.Interop.Word.Bookmark nativo permanece en el documento. Puede volver a crear un objeto Bookmark basado en un marcador nativo la próxima vez que se abra el documento. Para obtener más información, vea Agregar controles a documentos de Office en tiempo de ejecución.

Para agregar un control Bookmark a un documento mediante programación

  • En el controlador de eventos ThisDocument_Startup del proyecto, inserte el código siguiente para agregar el control Bookmark al primer párrafo del documento.

    Dim firstParagraph As Microsoft.Office.Tools.Word.Bookmark
    firstParagraph = Me.Controls.AddBookmark(Me.Paragraphs(1).Range, "FirstParagraph")
    
    Microsoft.Office.Tools.Word.Bookmark firstParagraph;
    firstParagraph = this.Controls.AddBookmark(this.Paragraphs[1].Range,
        "FirstParagraph");
    
    Nota:

    Si desea crear un control Microsoft.Office.Tools.Word.Bookmark a partir de un Microsoft.Office.Interop.Word.Bookmark existente, utilice el método AddBookmark y pase el Microsoft.Office.Interop.Word.Bookmark existente.

Agregar controles Bookmark en tiempo de ejecución en un proyecto en el nivel de la aplicación

A partir del SP1, puede agregar mediante programación controles Bookmark en tiempo de ejecución a cualquier documento abierto utilizando un complemento en el nivel de la aplicación. Para ello, genere un elemento host Document basado en un documento abierto y utilice métodos de la propiedad Controls de este elemento host. Existen dos sobrecargas de método que puede utilizar para agregar un control Bookmark de las maneras siguientes:

Los controles Bookmark creados de forma dinámica no se conservan en el documento como controles host cuando éste se cierra. Sin embargo, un objeto Microsoft.Office.Interop.Word.Bookmark nativo permanece en el documento. Puede volver a crear un objeto Bookmark basado en un marcador nativo la próxima vez que se abra el documento. Para obtener más información, vea Guardar controles dinámicos en documentos de Office.

Para obtener más información sobre cómo generar elementos host en proyectos en el nivel de la aplicación, vea Ampliar documentos de Word y libros de Excel en complementos en el nivel de la aplicación en tiempo de ejecución.

Para agregar un control Bookmark en un intervalo especificado

  • Utilice el método ControlCollection.AddBookmark(Range, String) y pase el objeto Range correspondiente al intervalo donde desea agregar el control Bookmark.

    En el ejemplo de código siguiente se agrega un nuevo Bookmark al principio del documento activo. Para utilizar este ejemplo, ejecute el código desde el controlador de eventos ThisAddIn_Startup en un proyecto de complemento de Word.

    Dim extendedDocument As Document = Me.Application.ActiveDocument.GetVstoObject()
    Dim firstParagraph As Bookmark = extendedDocument.Controls.AddBookmark( _
        extendedDocument.Paragraphs(1).Range, "FirstParagraph")
    
    Document extendedDocument = this.Application.ActiveDocument.GetVstoObject();
    Bookmark firstParagraph = extendedDocument.Controls.AddBookmark(
        extendedDocument.Paragraphs[1].Range, "FirstParagraph");
    

Para agregar un control Bookmark basado en un control Bookmark nativo

  • Utilice el método ControlCollection.AddBookmark(Bookmark, String) y pase el objeto Microsoft.Office.Interop.Word.Bookmark existente que desea utilizar como base para el nuevo Bookmark.

    En el ejemplo de código siguiente se crea un nuevo objeto Bookmark basado en el primer objeto Microsoft.Office.Interop.Word.Bookmark en el documento activo. Para utilizar este ejemplo, ejecute el código desde el controlador de eventos ThisAddIn_Startup en un proyecto de complemento de Word.

    If Me.Application.ActiveDocument.Bookmarks.Count > 0 Then
        Dim firstBookmark As Word.Bookmark = Me.Application.ActiveDocument.Bookmarks(1)
        Dim extendedDocument As Document = Me.Application.ActiveDocument.GetVstoObject()
    
        Dim vstoBookmark As Bookmark = extendedDocument.Controls.AddBookmark( _
            firstBookmark, "VSTOBookmark")
    End If
    
    if (this.Application.ActiveDocument.Bookmarks.Count > 0)
    {
        object index = 1;
        Word.Bookmark firstBookmark = this.Application.ActiveDocument.Bookmarks.get_Item(ref index);
        Document extendedDocument = this.Application.ActiveDocument.GetVstoObject();
    
        Bookmark vstoBookmark = extendedDocument.Controls.AddBookmark(
                firstBookmark, "VSTOBookmark");
    }
    

Vea también

Tareas

Cómo: Cambiar el tamaño de los controles Bookmark

Conceptos

Información general sobre elementos y controles Host

Agregar controles a documentos de Office en tiempo de ejecución

Limitaciones de programación de elementos y controles Host

Programar complementos de nivel de aplicación

Programar personalizaciones de nivel de documento

Métodos auxiliares para controles host

Otros recursos

Controles Host de Word

Historial de cambios

Fecha

Historial

Motivo

Julio de 2008

Se han añadido nuevos procedimientos para los complementos en el nivel de la aplicación.

Cambio de características de SP1.