Condividi tramite


Aggiornare il testo del segnalibro a livello di codice

È possibile inserire testo in un segnalibro in un documento di Microsoft Office Word in modo da poter recuperare il testo in seguito o sostituire il testo in un segnalibro. Se si sviluppa una personalizzazione a livello di documento, è anche possibile aggiornare il testo in un controllo Bookmark associato a dati. Per altre informazioni, vedere Associare i dati ai controlli nelle soluzioni Office.

Si applica a: le informazioni contenute in questo argomento si applicano ai progetti a livello di documento e ai progetti di componente aggiuntivo VSTO per Word. Per altre informazioni, vedere Funzionalità disponibili per app Office lication e tipo di progetto.

L'oggetto segnalibro può essere di due tipi diversi:

Usare i controlli host

Per aggiornare il contenuto dei segnalibri mediante un controllo Bookmark

  1. Creare una routine che accetti un argomento bookmark per il nome del segnalibro e un argomento newText per la stringa da assegnare alla proprietà Text.

    Nota

    Se si assegna testo alla proprietà Text o FormattedText di un controllo Bookmark, il segnalibro non viene eliminato.

    static void BookMarkReplace(
        ref Microsoft.Office.Tools.Word.Bookmark bookmark, 
        string newText)
    {
    
  2. Assegnare la stringa newText alla Text proprietà dell'oggetto Bookmark.

        bookmark.Text = newText;
    }
    

Usare oggetti Word

Per aggiornare il contenuto dei segnalibri mediante un oggetto Bookmark di Word

  1. Creare una routine che includa un argomento bookmark per il nome dell'oggetto Bookmark e un argomento newText per la stringa da assegnare alla proprietà Text del segnalibro.

    Nota

    Se si assegna testo a un oggetto Bookmark nativo di Word, il segnalibro viene eliminato.

    internal void BookMarkReplaceNative(
        Word.Bookmark bookmark, 
        string newText)
    {
    
  2. Assegnare la stringa newText alla Text proprietà del segnalibro, che elimina automaticamente il segnalibro. Riaggiungere quindi il segnalibro alla raccolta Bookmarks.

    L'esempio di codice seguente può essere usato in una personalizzazione a livello di documento.

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

    L'esempio di codice seguente può essere usato in un componente aggiuntivo VSTO. L'esempio usa il documento attivo.

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