TreeNodeBinding.DataMember プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ツリー ノード バインディングを適用するかどうかを判断するために、データ項目の Type プロパティと照合する値を取得または設定します。
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
プロパティ値
ツリー ノード バインディングを適用するかどうかを判断するために、データ項目の Type プロパティと照合する値。 既定値は空の文字列 ("") です。DataMember プロパティが設定されていないことを示します。
例
このセクションには、2 つのコード例が含まれています。 最初のコード例では、プロパティを使用 DataMember して、ノードにバインドする XML 要素を指定する方法を示します。 2 番目のコード例では、最初のコード例のサンプル XML データを提供します。
次のコード例では、プロパティを使用 DataMember して、ノードにバインドする XML 要素を指定する方法を示します。 このコード例を正しく機能させるには、このコード例の後に提供されるサンプル XML データを、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>
次のコード例では、前のコード例のサンプル 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>
<Appendix Heading="Appendix A">
</Appendix>
</Book>
注釈
データ メンバーは、基になるデータ ソース内のデータ項目の種類を指定しますが、データ ソースに応じて異なる情報を表すことができます。 階層データ ソース (オブジェクトによって System.Web.UI.IHierarchyData 表される) 内の各データ項目は、データ項目の種類を IHierarchyData.Type 指定するプロパティを公開します。 たとえば、XML 要素のデータ メンバーは、要素の名前を指定します。 データ ソースに複数のデータ項目型が含まれている場合、データ メンバーは使用するデータ項目の種類を指定します。 次 TreeNodeBinding の宣言は、 <Book>
階層内の XmlDataSource 場所に関係なく、ツリー内のすべてのノードにコントロールの要素をバインドします。
<asp:TreeNodeBinding DataMember="Book" TextField="Title" ValueField= "ISBN">
オブジェクトを TreeNodeBinding 作成するときは、バインドの条件を指定する必要があります。 条件は、データ項目をノードにバインドするタイミングを示します。 またはDataMemberプロパティ、または両方のプロパティをDepth指定できます。 両方を指定することで、パフォーマンスが若干向上します。
バインド条件が確立されたら、値にバインドできるオブジェクトの TreeNode プロパティをバインドできます。 データ項目のフィールドまたは静的な値にバインドできます。 静的な値にバインドすると、そのオブジェクトがTreeNodeBinding適用されるすべてのTreeNodeオブジェクトが同じ値を共有します。
このプロパティの値は、ビューステートに格納されます。