Condividi tramite


TreeNodeBinding.DataMember Proprietà

Definizione

Ottiene o imposta il valore da associare a una Type proprietà per un elemento di dati per determinare se applicare l'associazione del nodo 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à

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

Esempio

Questa sezione contiene due esempi di codice. Il primo esempio di codice illustra come utilizzare 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 utilizzare la DataMember proprietà per specificare l'elemento XML da associare a un nodo. Affinché questo esempio di codice funzioni correttamente, è 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 utilizzare. 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 di dati deve essere associato a un nodo. È possibile specificare la Depth proprietà o DataMember o entrambe le proprietà. Esiste un lieve miglioramento delle prestazioni specificando entrambi.

Dopo aver stabilito i criteri di associazione, è possibile associare una proprietà di un TreeNode oggetto che può essere associato a un valore. È possibile eseguire il binding 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