TreeView.DataBindings 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得 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,表示資料項目與其所繫結至的節點之間的關聯性。
- 屬性
範例
本節包含兩個程式碼範例。 第一個程式碼範例示範如何使用 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 會以下列優先順序套用樹狀節點系結:
定義 TreeNodeBinding 深度和資料成員的物件。
TreeNodeBinding只定義深度的物件。
TreeNodeBinding只定義資料成員的物件。
定義 TreeNodeBinding 深度或資料成員的物件。
如果指定多個符合相同優先順序準則的系結,則會套用集合中的第一個系結。
建立系結準則之後,您就可以系結可系結至值之 TreeNode 物件的 屬性。 您可以系結至資料項目的屬性或欄位,或顯示靜態值。 如需將 物件屬性 TreeNode 系結至值的詳細資訊,請參閱 TreeNodeBinding 。
DataBindings雖然集合可以透過程式設計方式填入,但通常會以宣告方式設定。 若要指定樹狀節點系結,請先在控制項的開頭和結束記號之間巢狀開啟和結尾 <DataBindings>
標記 TreeView 。 接下來,將元素放在 <asp:TreeNodeBinding>
您要指定之每個樹狀節點系結的開頭和結尾 <DataBindings>
標記之間。
藉由將 控制項的 屬性設定 AutoGenerateDataBindings 為 來建立資料系結時,所建立的 TreeView 系結會將 PopulateOnDemand 屬性設定為 true
true
。 以宣告方式建立的資料系結會將 PopulateOnDemand 屬性設定為 false
。 使用宣告式語法可讓您控制個別資料系結的行為。