Partilhar via


Atualizar programaticamente o texto do marcador

Você pode inserir texto em um indicador de espaço reservado em um documento do Microsoft Office Word para que você possa recuperar o texto em um momento posterior ou para substituir o texto em um indicador. Se você estiver desenvolvendo uma personalização em nível de documento, também poderá atualizar o texto em um Bookmark controle vinculado a dados. Para obter mais informações, consulte Vincular dados a controles em soluções do Office.

Aplica-se a: As informações neste tópico se aplicam a projetos de nível de documento e projetos de suplemento VSTO para Word. Para obter mais informações, consulte Recursos disponíveis por aplicativo e tipo de projeto do Office.

O objeto de indicador pode ser de dois tipos:

  • Um Bookmark controle de host.

    Bookmark Os controles estendem objetos nativos Bookmark habilitando a vinculação de dados e expondo eventos. Para obter mais informações sobre controles de host, consulte Visão geral sobre itens de host e controles de host.

  • Um objeto Bookmark nativo.

    Bookmark Os objetos não têm eventos ou recursos de vinculação de dados.

    Quando você atribui texto a um indicador, o comportamento difere entre um e um Bookmark Bookmark. Para obter mais informações, consulte Controle de marcador.

Usar controles de host

Para atualizar o conteúdo do indicador usando um controle Bookmark

  1. Crie um procedimento que usa um argumento para o nome do indicador e um bookmark newText argumento para a cadeia de caracteres a ser atribuída à Text propriedade.

    Observação

    Atribuir texto à Text propriedade ou FormattedText de um Bookmark controle não faz com que o indicador seja excluído.

    static void BookMarkReplace(
        ref Microsoft.Office.Tools.Word.Bookmark bookmark, 
        string newText)
    {
    
  2. Atribua a cadeia de caracteres newText à Text propriedade do Bookmark.

        bookmark.Text = newText;
    }
    

Usar objetos do Word

Para atualizar o conteúdo do indicador usando um objeto Indicador do Word

  1. Crie um procedimento que tenha um argumento para o nome do , e um bookmark newText argumento para a cadeia de caracteres a ser atribuída à Text propriedade do Bookmarkindicador.

    Observação

    A atribuição de texto a um objeto nativo do Word Bookmark faz com que o indicador seja excluído.

    internal void BookMarkReplaceNative(
        Word.Bookmark bookmark, 
        string newText)
    {
    
  2. Atribua a cadeia de caracteres newText à Text propriedade do indicador, que exclui automaticamente o indicador. Em seguida, adicione novamente o marcador à Bookmarks coleção.

    O exemplo de código a seguir pode ser usado em uma personalização em nível de documento.

        object rng = bookmark.Range;
        string bookmarkName = bookmark.Name;
    
        bookmark.Range.Text = newText;
    
        this.Bookmarks.Add(bookmarkName, ref rng); 
    }
    

    O exemplo de código a seguir pode ser usado em um suplemento VSTO. Este exemplo usa o documento ativo.

        object rng = bookmark.Range;
        string bookmarkName = bookmark.Name;
    
        bookmark.Range.Text = newText;
    
        Word.Document document = this.Application.ActiveDocument;
        document.Bookmarks.Add(bookmarkName, ref rng);
    }