Utilisation de SDT de contrôle de contenu

Dans Microsoft Word, vous pouvez créer un formulaire en commençant par un modèle et en ajoutant des contrôles de contenu, notamment des cases à cocher, des zones de texte, des sélecteurs de date et des listes déroulantes. Dans Aspose.Words, une balise de document structuré ou un contrôle de contenu de tout document chargé dans Aspose.Words est importé en tant que nœud StructuredDocumentTag. Les balises de document structurées (SDT ou contrôle de contenu) permettent d’intégrer la sémantique définie par le client ainsi que son comportement et son apparence dans un document.

StructuredDocumentTag peut apparaître dans un document aux endroits suivants:

  • Au niveau du bloc – Parmi les paragraphes et les tableaux, en tant qu’enfant d’un nœud Body, HeaderFooter, Comment, Footnote ou Shape
  • Au niveau des lignes – Parmi les lignes d’une table, en tant qu’enfant d’un nœud Table
  • Au niveau des cellules – Parmi les cellules d’une ligne de tableau, en tant qu’enfant d’un nœud Row
  • Niveau en ligne – Parmi le contenu en ligne à l’intérieur, en tant qu’enfant d’un paragraphe
  • Imbriqué dans un autre StructuredDocumentTag

Insertion de contrôles de contenu dans un document

Dans cette version de Aspose.Words, les types suivants de SDT ou de contrôle de contenu peuvent être créés:

  • Checkbox
  • DropDownList
  • ComboBox
  • Date
  • BuildingBlockGallery
  • Group
  • Picture
  • RichText
  • PlainText

L’exemple de code suivant montre comment créer un contrôle de contenu de type case à cocher:

L’exemple de code suivant montre comment créer un contrôle de contenu de type zone de texte enrichi:

L’exemple de code suivant montre comment créer un contrôle de contenu du type zone de liste déroulante:

Comment mettre à jour les contrôles de contenu

Cette section explique comment mettre à jour les valeurs de SDT ou de contrôle de contenu par programmation.

L’exemple de code suivant montre comment définir l’état actuel de la case à cocher:

L’exemple de code suivant montre comment modifier les contrôles de contenu de type zone de texte brut, liste déroulante et image:

Liaison du contrôle de contenu à des parties XML personnalisées

Vous pouvez lier des contrôles de contenu avec des données XML (partie XML personnalisée) dans des documents Word.

L’exemple de code suivant montre comment lier le contrôle de contenu à des parties XML personnalisées:

XMLMapping de la plage de balises de documents structurés

Vous pouvez obtenir le mappage de cette plage de balises de document structuré avec des données XML dans une partie XML personnalisée du document actuel à l’aide du Propriété StructuredDocumentTagRangeStart.XmlMapping. Cependant, la méthode SetMapping peut être utilisée pour mapper une plage de balises de document structuré à des données XML.

L’exemple de code suivant montre comment définir le mappage XML:

Effacer le contenu d’un contrôle de contenu

Vous pouvez effacer le contenu d’un contrôle de contenu en affichant un espace réservé. La méthode StructuredDocumentTag.Clear efface le contenu de cette balise de document structuré et affiche un espace réservé s’il est défini. Cependant, il n’est pas possible d’effacer le contenu d’un contrôle de contenu s’il comporte des révisions. Si un contrôle de contenu n’a pas d’espace réservé, cinq espaces sont insérés comme dans Microsoft Word (sauf sections répétitives, éléments de section répétitifs, groupes, cases à cocher, citations). Si un contrôle de contenu est mappé à du XML personnalisé, le nœud XML référencé est effacé.

L’exemple de code suivant montre comment effacer le contenu du contrôle de contenu:

Modifier les couleurs d’arrière-plan et de bordure du contrôle de contenu

La propriété StructuredDocumentTag.Color vous permet d’obtenir ou de définir la couleur du contrôle de contenu. La couleur affecte le contrôle du contenu dans deux situations:

  1. MS Word met en évidence l’arrière-plan du contrôle de contenu lorsque la souris se déplace sur le contrôle de contenu. Cela permet d’identifier le contrôle de contenu. La couleur de surbrillance est un peu plus “douce” que celle du Color. Par exemple, MS Word met en évidence l’arrière-plan avec la couleur rose, lorsque Color est rouge.
  2. Lorsque vous interagissez (édition, sélection, etc.) avec le contrôle de contenu, la bordure du contrôle de contenu est colorée avec le Color.

L’exemple de code suivant montre comment modifier la couleur du contrôle de contenu:

Comment définir le style pour formater le texte saisi dans le contrôle de contenu

Si vous souhaitez définir le style de contrôle de contenu, vous pouvez utiliser les propriétés StructuredDocumentTag.Style ou StructuredDocumentTag.StyleName. Lorsque vous tapez le texte dans le contrôle de contenu dans le document de sortie, le texte saisi aura le style “Citation”.

L’exemple de code suivant montre comment définir le style du contrôle de contenu:

Utilisation du contrôle de contenu de section répétitive

Le contrôle du contenu de la section répétitive permet de répéter le contenu qu’elle contient. À l’aide de Aspose.Words, les nœuds de balises de document structurés des types d’éléments de section répétitive et de section répétitive peuvent être créés et à cet effet, Type d’énumération SdtType fournit une propriété RepeatingSectionItem.

L’exemple de code suivant montre comment lier un contrôle de contenu de section répétitive à une table.