TreeView.DataBindings Vlastnost

Definice

Získá kolekci TreeNodeBinding objektů, které definují relaci mezi datovou položkou a uzlem, ke kterému je vázán.

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

Hodnota vlastnosti

TreeNodeBindingCollection

A TreeNodeBindingCollection , který představuje vztah mezi datovou položkou a uzlem, ke kterému je vázán.

Atributy

Příklady

Tato část obsahuje dva příklady kódu. První příklad kódu ukazuje, jak použít DataBindings kolekci k definování vztahu mezi datovou položkou a uzlem, na který je vázán. Druhý příklad kódu poskytuje ukázková data XML pro první příklad kódu.

Následující příklad kódu ukazuje, jak použít DataBindings kolekci k definování vztahu mezi datovou položkou a uzlem, ke kterému je vázán. Aby tento příklad fungoval správně, musíte zkopírovat ukázková data XML za tímto příkladem kódu do souboru s názvem Book.xml. Tento příklad určuje pouze DataMember vlastnost vazby. Mírné zvýšení výkonu může být přidáno také zadáním Depth vlastnosti.


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

Následující příklad kódu poskytuje ukázková data XML pro předchozí příklad.

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

Poznámky

Kolekce DataBindings obsahuje TreeNodeBinding objekty, které definují vztah mezi položkou dat a uzlem, ke kterému je vázán. Při vazbě ke zdroji dat, kde každá datová položka obsahuje více vlastností (například element XML s několika atributy), uzel zobrazí hodnotu vrácenou metodou ToString datové položky ve výchozím nastavení. V případě elementu XML uzel zobrazí název elementu, který zobrazuje základní strukturu stromu, ale není moc užitečný jinak. Uzel můžete vytvořit vazbu na konkrétní vlastnost datové položky zadáním vazeb uzlů stromu.

Při definování relace mezi datovou položkou a uzlem je nutné zadat kritéria pro vazbu i hodnoty, které se mají svázat s vlastnostmi objektu TreeNode . Kritéria označují, kdy má být datová položka vázána na uzel. Kritéria lze zadat pomocí hloubky uzlu, datového člena nebo obojího. Hloubka uzlu určuje úroveň uzlu, která je vázána. Pokud například zadáte hloubku uzlu 0, všechny uzly ve stromové struktuře na úrovni 0 jsou vázané pomocí vazby uzlu stromu. Datový člen určuje typ datové položky v podkladovém zdroji dat, ale může představovat různé informace v závislosti na zdroji dat. Například datový člen elementu XML určuje název elementu.

Pokud je definováno více TreeNodeBinding objektů, které jsou vzájemně v konfliktu, TreeView ovládací prvek použije vazby uzlů stromu v následujícím pořadí priorit:

  1. Objekt TreeNodeBinding , který definuje hloubku i datový člen.

  2. Objekt TreeNodeBinding , který definuje pouze hloubku.

  3. Objekt TreeNodeBinding , který definuje pouze datový člen.

  4. Objekt TreeNodeBinding , který definuje hloubku ani datový člen.

Pokud je zadáno více vazeb, které splňují stejná kritéria priority, použije se první vazba v kolekci.

Po vytvoření kritérií vazby můžete vytvořit vazbu vlastnosti objektu TreeNode , který může být vázán na hodnotu. Můžete vytvořit vazbu na atribut nebo pole datové položky nebo zobrazit statickou hodnotu. Další informace o vazbě vlastností objektu TreeNode k hodnotě naleznete v tématu TreeNodeBinding.

DataBindings I když je možné kolekci programově naplnit, obvykle se nastavuje deklarativním způsobem. Pokud chcete určit vazby uzlů stromové struktury, nejprve vnořujte levou a pravou <DataBindings> značku mezi levou a pravou značkou TreeView ovládacího prvku. Dále umístěte <asp:TreeNodeBinding> prvky mezi levou a pravou <DataBindings> značku pro každou vazbu uzlu stromu, kterou chcete zadat.

Při vytváření datových TreeView vazeb nastavením AutoGenerateDataBindings vlastnosti ovládacího prvku na true, vazby, které jsou vytvořeny, mají vlastnost nastavena PopulateOnDemand na true. Datové vazby vytvořené deklarativním způsobem mají vlastnost nastavenou PopulateOnDemand na false. Použití deklarativní syntaxe umožňuje řídit chování jednotlivých datových vazeb.

Platí pro

Viz také