TreeView.DataBindings Propriété

Définition

Obtient une collection d'objets TreeNodeBinding qui définissent la relation entre un élément de données et le nœud auquel il est lié.

public:
 property System::Web::UI::WebControls::TreeNodeBindingCollection ^ DataBindings { System::Web::UI::WebControls::TreeNodeBindingCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public System.Web.UI.WebControls.TreeNodeBindingCollection DataBindings { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.DataBindings : System.Web.UI.WebControls.TreeNodeBindingCollection
Public ReadOnly Property DataBindings As TreeNodeBindingCollection

Valeur de propriété

TreeNodeBindingCollection

TreeNodeBindingCollection qui représente la relation entre un élément de données et le nœud auquel il est lié.

Attributs

Exemples

Cette section contient deux exemples de code. Le premier exemple de code montre comment utiliser la DataBindings collection pour définir la relation entre un élément de données et le nœud auquel il est lié. Le deuxième exemple de code fournit des exemples de données XML pour le premier exemple de code.

L’exemple de code suivant montre comment utiliser la DataBindings collection pour définir la relation entre un élément de données et le nœud auquel il est lié. Pour que cet exemple fonctionne correctement, vous devez copier l’exemple de données XML, fourni après cet exemple de code, dans un fichier nommé Book.xml. Cet exemple spécifie uniquement la DataMember propriété de la liaison. Un léger gain de performances peut être ajouté en spécifiant également la Depth propriété.


<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView XML Data Binding Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView XML Data Binding Example</h3>
    
      <asp:TreeView id="BookTreeView" 
        DataSourceID="BookXmlDataSource"
        runat="server">
         
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book" TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter" TextField="Heading"/>
          <asp:TreeNodeBinding DataMember="Section" TextField="Heading"/>
        </DataBindings>
         
      </asp:TreeView>

      <asp:XmlDataSource id="BookXmlDataSource"  
        DataFile="Book.xml"
        runat="server">
      </asp:XmlDataSource>
    
    </form>
  </body>
</html>

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView XML Data Binding Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView XML Data Binding Example</h3>
    
      <asp:TreeView id="BookTreeView" 
        DataSourceID="BookXmlDataSource"
        runat="server">
         
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book" TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter" TextField="Heading"/>
          <asp:TreeNodeBinding DataMember="Section" TextField="Heading"/>
        </DataBindings>
         
      </asp:TreeView>

      <asp:XmlDataSource id="BookXmlDataSource"  
        DataFile="Book.xml"
        runat="server">
      </asp:XmlDataSource>
    
    </form>
  </body>
</html>

L’exemple de code suivant fournit des exemples de données XML pour l’exemple précédent.

<Book Title="Book Title">
    <Chapter Heading="Chapter 1">
        <Section Heading="Section 1">
        </Section>
        <Section Heading="Section 2">
        </Section>
    </Chapter>
    <Chapter Heading="Chapter 2">
        <Section Heading="Section 1">
        </Section>
    </Chapter>
</Book>

Remarques

La DataBindings collection contient des TreeNodeBinding objets qui définissent la relation entre un élément de données et le nœud auquel il est lié. Lors de la liaison à une source de données où chaque élément de données contient plusieurs propriétés (comme un élément XML avec plusieurs attributs), un nœud affiche la valeur retournée par la ToString méthode de l’élément de données, par défaut. Dans le cas d’un élément XML, le nœud affiche le nom de l’élément, qui affiche la structure sous-jacente de l’arborescence, mais n’est pas très utile sinon. Vous pouvez lier un nœud à une propriété d’élément de données spécifique en spécifiant des liaisons de nœud d’arborescence.

Lorsque vous définissez la relation entre un élément de données et un nœud, vous devez spécifier à la fois les critères de liaison et les valeurs à lier aux propriétés de TreeNode l’objet. Les critères indiquent quand un élément de données doit être lié à un nœud. Les critères peuvent être spécifiés avec une profondeur de nœud, un membre de données ou les deux. Une profondeur de nœud spécifie le niveau de nœud qui est lié. Par exemple, si vous spécifiez une profondeur de nœud de 0, tous les nœuds de la structure d’arborescence au niveau 0 sont liés à l’aide de la liaison de nœud d’arborescence. Un membre de données spécifie le type de l’élément de données dans la source de données sous-jacente, mais peut représenter différentes informations en fonction de la source de données. Par exemple, le membre de données d’un élément XML spécifie le nom de l’élément.

Si plusieurs TreeNodeBinding objets sont définis en conflit entre eux, le TreeView contrôle applique les liaisons de nœud d’arborescence dans l’ordre de priorité suivant :

  1. Objet TreeNodeBinding qui définit à la fois une profondeur et un membre de données.

  2. Objet TreeNodeBinding qui définit uniquement la profondeur.

  3. Objet TreeNodeBinding qui définit uniquement le membre de données.

  4. Objet TreeNodeBinding qui ne définit ni la profondeur ni le membre de données.

Si plusieurs liaisons sont spécifiées qui répondent aux mêmes critères de priorité, la première liaison de la collection est appliquée.

Une fois que les critères de liaison sont établis, vous pouvez ensuite lier une propriété d’un TreeNode objet qui peut être liée à une valeur. Vous pouvez soit lier un attribut ou un champ d’un élément de données, soit afficher une valeur statique. Pour plus d’informations sur la liaison des propriétés d’un TreeNode objet à une valeur, consultez TreeNodeBinding.

Bien que la DataBindings collection puisse être renseignée par programmation, elle est généralement définie de manière déclarative. Pour spécifier les liaisons de nœud d’arborescence, commencez par imbriquer les balises d’ouverture et de fermeture <DataBindings> entre les balises d’ouverture et de fermeture du TreeView contrôle. Ensuite, placez <asp:TreeNodeBinding> des éléments entre les balises d’ouverture et de fermeture <DataBindings> pour chaque liaison de nœud d’arborescence que vous souhaitez spécifier.

Lorsque des liaisons de données sont créées en définissant la AutoGenerateDataBindings propriété du TreeView contrôle truesur , les liaisons créées ont la PopulateOnDemand propriété définie truesur . Les liaisons de données créées de manière déclarative ont la PopulateOnDemand propriété définie sur false. L’utilisation de la syntaxe déclarative vous permet de contrôler le comportement des liaisons de données individuelles.

S’applique à

Voir aussi