Como atualizar indicador de texto programaticamente
Você pode inserir texto em um indicador de espaço reservado em um documento Microsoft Office Word para que você possa recuperar o texto mais tarde, ou substituir texto em um indexador.Se você estiver desenvolvendo um nível da personalização, você também pode atualizar o texto em um controle de Microsoft.Office.Tools.Word.Bookmark associado a dados.Para obter mais informações, consulte A ligação de dados a controles em soluções do Office.
Aplicável a: As informações neste tópico se aplicam a projetos de nível de documento e projetos de nível de aplicativo para Word 2013 e Word 2010. Para obter mais informações, consulte Recursos disponíveis pelo aplicativo do Office e o tipo de projeto.
O objeto do indexador pode ser um dos dois tipos:
Um controle do host de Microsoft.Office.Tools.Word.Bookmark .
os controles deMicrosoft.Office.Tools.Word.Bookmark estendem objetos de Microsoft.Office.Interop.Word.Bookmark de ambos habilitar associação de dados e expõe eventos.Para obter mais informações sobre controles host, consulte Itens de host e visão geral sobre controles de Host.
um objeto nativo de Microsoft.Office.Interop.Word.Bookmark .
os objetos deMicrosoft.Office.Interop.Word.Bookmark não tem eventos ou recursos de associação de dados.
Quando você atribui o texto para um marcador, o comportamento difere entre Microsoft.Office.Interop.Word.Bookmark e Microsoft.Office.Tools.Word.Bookmark.Para obter mais informações, consulte Indicador de controle.
Usando controles host
Para atualizar conteúdo do indexador usando um controle do indexador
Crie um procedimento que recebe um argumento de bookmark para o nome do marcador, e um argumento de newText para a cadeia de caracteres para atribuir a Text a propriedade.
Observação O texto de atribuição para a propriedade de Bookmark.Text ou de Bookmark.FormattedText de um controle de Microsoft.Office.Tools.Word.Bookmark não fará o indexador a ser excluído.
Shared Sub BookMarkReplace( _ ByRef bookmark As Microsoft.Office.Tools.Word.Bookmark, _ ByVal newText As String)
static void BookMarkReplace( ref Microsoft.Office.Tools.Word.Bookmark bookmark, string newText) {
Atribuir a cadeia de caracteres de newText à propriedade de Text de Microsoft.Office.Tools.Word.Bookmark.
bookmark.Text = newText End Sub
bookmark.Text = newText; }
Usando objetos do word
Para atualizar o conteúdo do indexador que usam um indicador do word objeto
Crie um procedimento que tem um argumento de bookmark para o nome de Microsoft.Office.Interop.Word.Bookmark, e um argumento de newText para a cadeia de caracteres para atribuir a Range.Text a propriedade do indexador.
Observação O texto de atribuição a um objeto nativo de Microsoft.Office.Interop.Word.Bookmark do word faz com que o indexador a ser excluído.
Friend Sub BookMarkReplaceNative( _ ByVal bookmark As Word.Bookmark, _ ByVal newText As String)
internal void BookMarkReplaceNative( Word.Bookmark bookmark, string newText) {
Atribuir a cadeia de caracteres de newText à propriedade de Range.Text bookmark, que automaticamente exclui o indexador.Adicionar novamente no indexador à coleção de Bookmarks .
O exemplo de código pode ser usado em uma personalização da nível.
Dim rng As Word.Range = bookmark.Range Dim bookmarkName As String = bookmark.Name bookmark.Range.Text = newText Me.Bookmarks.Add(Name:=bookmarkName, Range:=rng) End Sub
object rng = bookmark.Range; string bookmarkName = bookmark.Name; bookmark.Range.Text = newText; this.Bookmarks.Add(bookmarkName, ref rng); }
O exemplo de código pode ser usado em um suplemento ao aplicativo.este exemplo usa o documento ativo.
Dim rng As Object = bookmark.Range Dim bookmarkName As String = bookmark.Name bookmark.Range.Text = newText Me.Application.ActiveDocument.Bookmarks.Add(Name:=bookmarkName, Range:=rng) End Sub
object rng = bookmark.Range; string bookmarkName = bookmark.Name; bookmark.Range.Text = newText; Word.Document document = this.Application.ActiveDocument; document.Bookmarks.Add(bookmarkName, ref rng); }
Consulte também
Tarefas
Como inserir texto em documentos do Word programaticamente