Mettre à jour par programmation le texte du signet

Vous pouvez insérer un texte dans un signet d'espace réservé d'un document Microsoft Office Word afin de pouvoir récupérer le texte ultérieurement, ou pour remplacer le texte d'un signet. Si vous développez une personnalisation au niveau du document, vous pouvez également mettre à jour le texte dans un contrôle Bookmark lié aux données. Pour plus d’informations, consultez Lier des données aux contrôles dans Bureau solutions.

S’applique à : les informations contenues dans cette rubrique s’appliquent aux projets au niveau du document et aux projets de complément VSTO pour Word. Pour plus d’informations, consultez Fonctionnalités disponibles par application Office lication et le type de projet.

L'objet Bookmark peut être de deux types :

  • Un contrôle hôte Bookmark.

    Les contrôles Bookmark étendent les objets Bookmark natifs en activant la liaison de données et en exposant les événements. Pour plus d’informations sur les contrôles hôtes, consultez la vue d’ensemble des éléments hôtes et des contrôles hôtes.

  • Objet Bookmark natif.

    Les objets Bookmark n'ont pas de fonctionnalités de liaison de données ou d'événements.

    Lorsque vous assignez un texte à un signet, le comportement diffère entre un Bookmark et un Bookmark. Pour plus d’informations, consultez le contrôle Signet.

Utiliser des contrôles hôtes

Pour mettre à jour le contenu d'un signet à l'aide d'un contrôle Bookmark

  1. Créez une procédure qui accepte un argument bookmark comme nom du signet et un argument newText comme chaîne à attribuer à la propriété Text.

    Remarque

    L'affectation de texte à la propriété Text ou FormattedText d'un contrôle Bookmark n'entraîne pas la suppression du signet.

    static void BookMarkReplace(
        ref Microsoft.Office.Tools.Word.Bookmark bookmark, 
        string newText)
    {
    
  2. Affectez la chaîne newText à la Text propriété du Bookmark.

        bookmark.Text = newText;
    }
    

Utiliser des objets Word

Pour mettre à jour le contenu d'un signet à l'aide d'un objet Bookmark Word

  1. Créez une procédure qui accepte un argument bookmark comme nom du Bookmark et un argument newText comme chaîne à attribuer à la propriété Text du signet.

    Remarque

    L'assignation de texte à un objet Word Bookmark natif entraîne la suppression du signet.

    internal void BookMarkReplaceNative(
        Word.Bookmark bookmark, 
        string newText)
    {
    
  2. Affectez la chaîne newText à la Text propriété du signet, qui supprime automatiquement le signet. Puis, ajoutez de nouveau le signet à la collection Bookmarks.

    L'exemple de code suivant peut être utilisé dans une personnalisation au niveau du document.

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

    L'exemple de code suivant peut être utilisé dans un complément VSTO. Cet exemple utilise le document actif.

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