Share via


XMLNodes, contrôle

Mise à jour : novembre 2007

S'applique à

Les informations de cette rubrique s'appliquent uniquement aux projets Visual Studio Tools pour Office et versions de Microsoft Office spécifiés.

Type de projet

  • Projets au niveau du document

Version de Microsoft Office

  • Word 2007

  • Word 2003

Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet.

Le contrôle XMLNodes est une collection d'objets de nœud XML mappés qui expose des événements. Le contrôle XMLNodes est créé uniquement lorsqu'un élément de schéma répétitif est mappé à un document Microsoft Office Word. Si l'élément répétitif contient des éléments enfants, chacun des éléments enfants est également créé en tant que contrôle XMLNodes.

Une fois que Visual Studio Tools pour Office a créé la collection de nœuds XML, vous pouvez programmer directement le contrôle sans parcourir le modèle objet Word. Le contrôle XMLNodes peut uniquement être supprimé en supprimant le mappage d'élément dans le document.

Remarque :

Si vous accédez à un élément enfant du contrôle XMLNodes via la propriété Item, un objet Microsoft.Office.Interop.Word.XMLNode est retourné, plutôt qu'un contrôle Microsoft.Office.Tools.Word.XMLNode. Pour plus d'informations, consultez Limitations de programmation des éléments hôtes et des contrôles hôtes.

Liaison de données au contrôle

Un contrôle XMLNodes ne prend pas en charge la liaison de données. En effet, le contrôle XMLNodes ne dispose pas de fonctions de liaison de données complexes, et la liaison de données simple ne peut pas représenter des données répétitives.

Mise en forme

Toute mise en forme qui peut être appliquée à du texte dans le document peut être appliquée à un contrôle XMLNodes.

Événements

Les événements disponibles pour le contrôle XMLNodes sont les suivants :

Événements de comparaison

Vous pouvez capturer un événement lorsque l'utilisateur déplace son curseur à l'intérieur du contexte d'un contrôle XMLNodes particulier. Par exemple, vous pouvez avoir un contrôle XMLNodes nommé Customer qui possède un contrôle XMLNodes enfant nommé Company, et Company a deux contrôles XMLNodes enfants nommés CompanyName et CompanyRegion comme suit :

<Customer>
    <Company>
        <CompanyName>
        <CompanyRegion>

Si vous souhaitez afficher un contrôle sur le volet Actions chaque fois que le curseur est déplacé dans le nœud Company, le fait que le curseur soit placé dans CompanyName ou CompanyRegion n'a pas d'importance car ils sont tous deux dans le contexte de Company. Dans ce cas, vous pouvez écrire votre code dans l'événement ContextEnter de Company.

Dans la plupart des cas, lorsque le curseur entre dans un contrôle XMLNodes, les événements Select et ContextEnter sont déclenchés. Le tableau ci-dessous indique les différences entre ces événements.

Événement Select

Événement ContextEnter

Se produit lorsque le curseur est placé à l'intérieur de l'un des nœuds de la collection XMLNodes.

Se produit lorsque le curseur est placé à l'intérieur de l'un des nœuds ou des nœuds descendants de la collection XMLNodes, à partir d'une zone en dehors du contexte du nœud. En d'autres termes, il est déclenché uniquement lorsque le contexte change et peut être déclenché pour plusieurs contrôles XMLNodes imbriqués.

Par exemple, lorsque vous déplacez le curseur situé en dehors de Customer dans CompanyName, les événements ContextEnter pour Customer, Company et CompanyName sont déclenchés. Si vous déplacez ensuite le curseur de CompanyName vers CompanyRegion, l'événement ContextEnter est déclenché pour CompanyRegion uniquement, car le contexte est identique pour Company et Customer. Votre document peut comporter plusieurs nœuds Company. Si vous déplacez le curseur à partir du nœud CompanyName d'un nœud Company vers le nœud CompanyName d'un autre nœud Company, le contexte est le même. Par conséquent, seul l'événement Select est déclenché.

Les mêmes différences existent entre les événements ContextLeave et Deselect.

Voir aussi

Tâches

Comment : ajouter des contrôles XMLNodes à des documents Word

Comment : mapper des schémas à des documents Word dans Visual Studio

Concepts

Vue d'ensemble des éléments hôtes et des contrôles hôtes

XMLNode, contrôle

Limitations de programmation des éléments hôtes et des contrôles hôtes

Autres ressources

Contrôles hôtes Word

Contrôles hôtes Excel