TreeView.DataBindings TreeView.DataBindings TreeView.DataBindings TreeView.DataBindings Property

Definizione

Ottiene un insieme di oggetti TreeNodeBinding che definiscono la relazione tra un elemento di dati e il nodo a cui si sta effettuando l'associazione.Gets a collection of TreeNodeBinding objects that define the relationship between a data item and the node that it is binding to.

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; }
member this.DataBindings : System.Web.UI.WebControls.TreeNodeBindingCollection
Public ReadOnly Property DataBindings As TreeNodeBindingCollection

Valore della proprietà

Oggetto TreeNodeBindingCollection che rappresenta la relazione tra un elemento di dati e il nodo a cui si sta effettuando l'associazione.A TreeNodeBindingCollection that represents the relationship between a data item and the node that it is binding to.

Esempi

In questa sezione sono riportati due esempi di codice.This section contains two code examples. Nel primo esempio di codice viene illustrato come utilizzare DataBindings la raccolta per definire la relazione tra un elemento di dati e il nodo a cui viene associato.The first code example demonstrates how to use the DataBindings collection to define the relationship between a data item and the node that it is binding to. Il secondo esempio di codice fornisce dati XML di esempio per il primo esempio di codice.The second code example provides sample XML data for the first code example.

Nell'esempio di codice riportato di seguito viene illustrato DataBindings come utilizzare la raccolta per definire la relazione tra un elemento di dati e il nodo a cui viene associato.The following code example demonstrates how to use the DataBindings collection to define the relationship between a data item and the node that it is binding to. Per il corretto funzionamento di questo esempio, è necessario copiare i dati XML di esempio, forniti dopo questo esempio di codice, in un file denominato book. XML.For this example to work correctly, you must copy the sample XML data, provided after this code example, to a file named Book.xml. In questo esempio viene specificata DataMember solo la proprietà dell'associazione.This example specifies only the DataMember property of the binding. È possibile aggiungere un lieve miglioramento delle prestazioni, specificando Depth anche la proprietà.A slight performance gain could be added by also specifying the Depth property.


<%@ 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>

Nell'esempio di codice riportato di seguito vengono forniti dati XML di esempio per l'esempio precedente.The following code example provides sample XML data for the preceding example.

<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>  

Commenti

La DataBindings raccolta contiene TreeNodeBinding oggetti che definiscono la relazione tra un elemento di dati e il nodo a cui viene associato.The DataBindings collection contains TreeNodeBinding objects that define the relationship between a data item and the node that it is binding to. Quando si esegue l'associazione a un'origine dati in cui ogni elemento dati contiene più proprietà (ad esempio un elemento XML con diversi attributi), per impostazione predefinita in un nodo ToString viene visualizzato il valore restituito dal metodo dell'elemento di dati.When binding to a data source where each data item contains multiple properties (such as an XML element with several attributes), a node displays the value that is returned by the ToString method of the data item, by default. Nel caso di un elemento XML, il nodo Visualizza il nome dell'elemento, che mostra la struttura sottostante dell'albero, ma non è molto utile in caso contrario.In the case of an XML element, the node displays the element name, which shows the underlying structure of the tree, but is not very useful otherwise. È possibile associare un nodo a una proprietà specifica dell'elemento dati specificando associazioni di nodi della struttura ad albero.You can bind a node to a specific data item property by specifying tree node bindings.

Quando si definisce la relazione tra un elemento di dati e un nodo, è necessario specificare sia i criteri per l'associazione che i valori da associare alle TreeNode proprietà dell'oggetto.When defining the relationship between a data item and a node, you must specify both the criteria for binding and the values to bind to the properties of TreeNode object. I criteri indicano quando un elemento di dati deve essere associato a un nodo.The criteria indicate when a data item should be bound to a node. I criteri possono essere specificati con una profondità del nodo, un membro dati o entrambi.The criteria can be specified with a node depth, a data member, or both. Una profondità del nodo specifica il livello del nodo che viene associato.A node depth specifies the node level that gets bound. Se ad esempio si specifica una profondità del nodo pari a 0, tutti i nodi nella struttura ad albero al livello 0 vengono associati tramite l'associazione del nodo della struttura ad albero.For example, if you specify a node depth of 0, all nodes in the tree structure at level 0 are bound using the tree node binding. Un membro dati specifica il tipo dell'elemento di dati nell'origine dati sottostante, ma può rappresentare informazioni diverse a seconda dell'origine dati.A data member specifies the type of the data item in the underlying data source, but can represent different information depending on the data source. Ad esempio, il membro dati per un elemento XML specifica il nome dell'elemento.For example, the data member for an XML element specifies the name of the element.

Se vengono TreeNodeBinding definiti più oggetti che sono in conflitto tra loro, TreeView il controllo applica le associazioni del nodo della struttura ad albero nel seguente ordine di precedenza:If multiple TreeNodeBinding objects are defined that conflict with each other, the TreeView control applies the tree node bindings in the following order of precedence:

  1. TreeNodeBinding Oggetto che definisce una profondità e un membro dati.The TreeNodeBinding object that defines both a depth and a data member.

  2. TreeNodeBinding Oggetto che definisce solo la profondità.The TreeNodeBinding object that defines only the depth.

  3. TreeNodeBinding Oggetto che definisce solo il membro dati.The TreeNodeBinding object that defines only the data member.

  4. TreeNodeBinding Oggetto che definisce né la profondità né il membro dati.The TreeNodeBinding object that defines neither the depth nor the data member.

Se vengono specificate più associazioni che soddisfano gli stessi criteri di precedenza, viene applicata la prima associazione nella raccolta.If multiple bindings are specified that meet the same precedence criteria, the first binding in the collection is applied.

Una volta stabiliti i criteri di associazione, è possibile associare una proprietà di TreeNode un oggetto che può essere associato a un valore.Once the binding criteria is established, you can then bind a property of a TreeNode object that can be bound to a value. È possibile eseguire l'associazione a un attributo o a un campo di un elemento di dati o visualizzare un valore statico.You can either bind to an attribute or field of a data item or display a static value. Per ulteriori informazioni sull'associazione delle proprietà di un TreeNode oggetto a un valore, vedere TreeNodeBinding.For more information on binding the properties of a TreeNode object to a value, see TreeNodeBinding.

Sebbene la DataBindings raccolta possa essere popolata a livello di codice, viene in genere impostata in modo dichiarativo.Although the DataBindings collection can be programmatically populated, it is usually set declaratively. Per specificare le associazioni del nodo della struttura ad albero, prima annidare i tag <DataBindings> TreeView di apertura e di chiusura tra i tag di apertura e di chiusura del controllo.To specify the tree node bindings, first nest opening and closing <DataBindings> tags between the opening and closing tags of the TreeView control. Posizionare <asp:TreeNodeBinding> quindi gli elementi tra i tag di apertura <DataBindings> e di chiusura per ogni binding del nodo della struttura ad albero che si vuole specificare.Next, place <asp:TreeNodeBinding> elements between the opening and closing <DataBindings> tags for each tree node binding you want to specify.

Quando i data binding vengono creati impostando la AutoGenerateDataBindings proprietà TreeView del controllo su true, i binding creati hanno la PopulateOnDemand proprietà impostata su true.When data bindings are created by setting the AutoGenerateDataBindings property of the TreeView control to true, the bindings that are created have the PopulateOnDemand property set to true. Le associazioni dati create in modo dichiarativo hanno PopulateOnDemand la proprietà impostata falsesu.Data bindings that are created declaratively have the PopulateOnDemand property set to false. L'utilizzo della sintassi dichiarativa consente di controllare il comportamento delle singole associazioni dati.Using the declarative syntax allows you to control the behavior of individual data bindings.

Si applica a

Vedi anche