Condividi tramite


TreeNodeBinding.DataMember Proprietà

Definizione

Ottiene o imposta il valore da confrontare con una proprietà Type di un elemento dati per determinare se applicare l'associazione di nodi della struttura ad albero.

public:
 property System::String ^ DataMember { System::String ^ get(); void set(System::String ^ value); };
public string DataMember { get; set; }
member this.DataMember : string with get, set
Public Property DataMember As String

Valore della proprietà

String

Valore da confrontare con la proprietà Type di un elemento di dati per determinare se applicare l'associazione di nodi della struttura ad albero. Il valore predefinito è una stringa vuota (""), che indica che la proprietà DataMember non è impostata.

Esempio

In questa sezione sono riportati due esempi di codice. Il primo esempio di codice illustra come usare la proprietà per specificare l'elemento DataMember XML da associare a un nodo. Il secondo esempio di codice fornisce dati XML di esempio per il primo esempio di codice.

Nell'esempio di codice seguente viene illustrato come usare la proprietà per specificare l'elemento DataMember XML da associare a un nodo. Per il corretto funzionamento di questo esempio di codice, è necessario copiare i dati XML di esempio, forniti dopo questo esempio di codice, in un file denominato Book.xml.


<%@ 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>TreeViewBinding DataMember and Depth Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeViewBinding DataMember and Depth Example</h3>
    
      <!-- Set the DataMember and Depth properties of a -->
      <!-- TreeNodeBinding object declaratively. You  -->
      <!-- can render items at the same node level    -->
      <!-- by setting each item's Depth property to   -->
      <!-- the same value.                -->
      <asp:TreeView id="BookTreeView" 
        DataSourceID="BookXmlDataSource"
        runat="server">
          
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book" Depth="0" TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter" Depth="1" TextField="Heading"/>
          <asp:TreeNodeBinding DataMember="Appendix" Depth="1" 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>TreeViewBinding DataMember and Depth Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeViewBinding DataMember and Depth Example</h3>
    
      <!-- Set the DataMember and Depth properties of a -->
      <!-- TreeNodeBinding object declaratively. You  -->
      <!-- can render items at the same node level    -->
      <!-- by setting each item's Depth property to   -->
      <!-- the same value.                -->
      <asp:TreeView id="BookTreeView" 
        DataSourceID="BookXmlDataSource"
        runat="server">
          
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book" Depth="0" TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter" Depth="1" TextField="Heading"/>
          <asp:TreeNodeBinding DataMember="Appendix" Depth="1" TextField="Heading"/>
        </DataBindings>
         
      </asp:TreeView>
      
      <asp:XmlDataSource id="BookXmlDataSource"  
        DataFile="Book.xml"
        runat="server">
      </asp:XmlDataSource>
    
    </form>
  </body>
</html>

Nell'esempio di codice seguente vengono forniti dati XML di esempio per l'esempio di codice precedente.

<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>  
    <Appendix Heading="Appendix A">  
    </Appendix>  
</Book>  

Commenti

Un membro dati specifica il tipo dell'elemento di dati nell'origine dati sottostante, ma può rappresentare informazioni diverse a seconda dell'origine dati. Ogni elemento di dati in un'origine dati gerarchica (rappresentata da un System.Web.UI.IHierarchyData oggetto) espone una IHierarchyData.Type proprietà, che specifica il tipo dell'elemento di dati. Ad esempio, il membro dati per un elemento XML specifica il nome dell'elemento. Quando un'origine dati contiene più tipi di elemento di dati, il membro dati specifica il tipo di elemento di dati da usare. La dichiarazione seguente TreeNodeBinding associa gli <Book> elementi di un XmlDataSource controllo a tutti i nodi dell'albero, indipendentemente dalla posizione nella gerarchia:

<asp:TreeNodeBinding DataMember="Book" TextField="Title" ValueField= "ISBN">  

Quando si crea un TreeNodeBinding oggetto, è necessario specificare i criteri per l'associazione. I criteri indicano quando un elemento dati deve essere associato a un nodo. È possibile specificare la Depth proprietà o DataMember o entrambe le proprietà. Esiste un lieve aumento delle prestazioni specificando entrambi.

Dopo aver stabilito i criteri di associazione, è quindi possibile associare una proprietà di un TreeNode oggetto che può essere associato a un valore. È possibile associare a un campo di un elemento di dati o a un valore statico. Se associato a un valore statico, tutti gli TreeNode oggetti a cui viene applicato l'oggetto TreeNodeBinding condividono lo stesso valore.

Il valore di questa proprietà viene archiviato nello stato di visualizzazione.

Si applica a

Vedi anche