TreeView.DataBindings 屬性

定義

取得 TreeNodeBinding 物件的集合,這些物件會定義資料項目與其所繫結至的節點之間的關聯性。

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

屬性值

TreeNodeBindingCollection

TreeNodeBindingCollection,表示資料項目與其所繫結至的節點之間的關聯性。

屬性

範例

本節包含兩個程式碼範例。 第一個程式碼範例示範如何使用 DataBindings 集合來定義資料項目與其系結之節點之間的關聯性。 第二個程式碼範例會提供第一個程式碼範例的範例 XML 資料。

下列程式碼範例示範如何使用 DataBindings 集合來定義資料項目與其系結之節點之間的關聯性。 若要讓此範例正常運作,您必須將此程式碼範例之後提供的範例 XML 資料複製到名為 Book.xml 的檔案。 這個範例只會指定系 DataMember 結的 屬性。 您也可以藉由指定 Depth 屬性來新增稍微提升效能。


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

下列程式碼範例提供上述範例的 XML 資料範例。

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

備註

DataBindings集合包含物件,這些物件會 TreeNodeBinding 定義資料項目與其系結之節點之間的關聯性。 當系結至資料來源時,每個資料項目都包含多個屬性 (,例如具有數個屬性的 XML 元素) ,節點預設會顯示資料項目方法所 ToString 傳回的值。 在 XML 元素的情況下,節點會顯示元素名稱,以顯示樹狀結構的基礎結構,但不是非常實用。 您可以藉由指定樹狀節點系結,將節點系結至特定資料項目屬性。

定義資料項目與節點之間的關聯性時,您必須同時指定系結的準則和要系結至物件的屬性 TreeNode 的值。 準則會指出資料項目何時應該系結至節點。 您可以使用節點深度、資料成員或兩者來指定準則。 節點深度會指定系結的節點層級。 例如,如果您指定節點深度為 0,則層級 0 之樹狀結構中的所有節點都會使用樹狀節點系結來系結。 資料成員會指定基礎資料來源中資料項目的類型,但可以根據資料來源來表示不同的資訊。 例如,XML 元素的資料成員會指定專案的名稱。

如果定義多個 TreeNodeBinding 物件彼此衝突,控制項 TreeView 會以下列優先順序套用樹狀節點系結:

  1. 定義 TreeNodeBinding 深度和資料成員的物件。

  2. TreeNodeBinding只定義深度的物件。

  3. TreeNodeBinding只定義資料成員的物件。

  4. 定義 TreeNodeBinding 深度或資料成員的物件。

如果指定多個符合相同優先順序準則的系結,則會套用集合中的第一個系結。

建立系結準則之後,您就可以系結可系結至值之 TreeNode 物件的 屬性。 您可以系結至資料項目的屬性或欄位,或顯示靜態值。 如需將 物件屬性 TreeNode 系結至值的詳細資訊,請參閱 TreeNodeBinding

DataBindings雖然集合可以透過程式設計方式填入,但通常會以宣告方式設定。 若要指定樹狀節點系結,請先在控制項的開頭和結束記號之間巢狀開啟和結尾 <DataBindings> 標記 TreeView 。 接下來,將元素放在 <asp:TreeNodeBinding> 您要指定之每個樹狀節點系結的開頭和結尾 <DataBindings> 標記之間。

藉由將 控制項的 屬性設定 AutoGenerateDataBindings 為 來建立資料系結時,所建立的 TreeView 系結會將 PopulateOnDemand 屬性設定為 true true 。 以宣告方式建立的資料系結會將 PopulateOnDemand 屬性設定為 false 。 使用宣告式語法可讓您控制個別資料系結的行為。

適用於

另請參閱