TreeNodeBindingCollection クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
TreeNodeBinding コントロールに含まれる TreeView オブジェクトのコレクションを表します。 このクラスは継承できません。
public ref class TreeNodeBindingCollection sealed : System::Web::UI::StateManagedCollection
public sealed class TreeNodeBindingCollection : System.Web.UI.StateManagedCollection
type TreeNodeBindingCollection = class
inherit StateManagedCollection
Public NotInheritable Class TreeNodeBindingCollection
Inherits StateManagedCollection
- 継承
例
このセクションには、2 つのコード例が含まれています。 最初のコード例では、オブジェクトを宣言的に設定する方法を TreeNodeBindingCollection 示します。 2 番目のコード例では、プログラムでオブジェクトを設定する方法を TreeNodeBindingCollection 示します。
次のコード例は、オブジェクトを宣言的に設定する方法を TreeNodeBindingCollection 示しています。 この例を正しく機能させるには、このセクションの最後にある 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>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>
次のコード例は、プログラムでオブジェクトを設定する方法を TreeNodeBindingCollection 示しています。 この例を正しく機能させるには、このセクションの最後にあるサンプル 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">
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
// Create a new TreeView control.
TreeView NewTree = new TreeView();
// Set the properties of the TreeView control.
NewTree.ID = "BookTreeView";
NewTree.DataSourceID = "BookXmlDataSource";
// Create the tree node binding relationship.
// Create the root node binding.
TreeNodeBinding RootBinding = new TreeNodeBinding();
RootBinding.DataMember = "Book";
RootBinding.TextField = "Title";
// Create the parent node binding.
TreeNodeBinding ParentBinding = new TreeNodeBinding();
ParentBinding.DataMember = "Chapter";
ParentBinding.TextField = "Heading";
// Create the leaf node binding.
TreeNodeBinding LeafBinding = new TreeNodeBinding();
LeafBinding.DataMember = "Section";
LeafBinding.TextField = "Heading";
// Add bindings to the DataBindings collection.
NewTree.DataBindings.Add(RootBinding);
NewTree.DataBindings.Add(ParentBinding);
NewTree.DataBindings.Add(LeafBinding);
// Manually register the event handler for the SelectedNodeChanged event.
NewTree.SelectedNodeChanged += new EventHandler(this.Node_Change);
// Add the TreeView control to the Controls collection of the PlaceHolder control.
ControlPlaceHolder.Controls.Add(NewTree);
}
void Node_Change(Object sender, EventArgs e)
{
// Retrieve the TreeView control from the Controls collection of the PlaceHolder control.
TreeView LocalTree = (TreeView)ControlPlaceHolder.FindControl("BookTreeView");
// Display the selected node.
Message.Text = "You selected: " + LocalTree.SelectedNode.Text;
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeView Constructor Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeView Constructor Example</h3>
<asp:PlaceHolder id="ControlPlaceHolder" runat="server">
</asp:PlaceHolder>
<asp:XmlDataSource id="BookXmlDataSource"
DataFile="Book.xml"
runat="server">
</asp:XmlDataSource>
<br /><br />
<asp:Label id="Message" runat="server"/>
</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">
<script runat="server">
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' Create a new TreeView control.
Dim NewTree As New TreeView
' Set the properties of the TreeView control.
NewTree.ID = "BookTreeView"
NewTree.DataSourceID = "BookXmlDataSource"
' Create the tree node binding relationship.
' Create the root node binding.
Dim RootBinding As New TreeNodeBinding
RootBinding.DataMember = "Book"
RootBinding.TextField = "Title"
' Create the parent node binding.
Dim ParentBinding As New TreeNodeBinding
ParentBinding.DataMember = "Chapter"
ParentBinding.TextField = "Heading"
' Create the leaf node binding.
Dim LeafBinding As New TreeNodeBinding
LeafBinding.DataMember = "Section"
LeafBinding.TextField = "Heading"
' Add bindings to the DataBindings collection.
NewTree.DataBindings.Add(RootBinding)
NewTree.DataBindings.Add(ParentBinding)
NewTree.DataBindings.Add(LeafBinding)
' Manually register the event handler for the SelectedNodeChanged event.
AddHandler NewTree.SelectedNodeChanged, AddressOf Node_Change
' Add the TreeView control to the Controls collection of the PlaceHolder control.
ControlPlaceHolder.Controls.Add(NewTree)
End Sub
Sub Node_Change(ByVal sender As Object, ByVal e As EventArgs)
' Retrieve the TreeView control from the Controls collection of the PlaceHolder control.
Dim LocalTree As TreeView = CType(ControlPlaceHolder.FindControl("BookTreeView"), TreeView)
' Display the selected node.
Message.Text = "You selected: " & LocalTree.SelectedNode.Text
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeView Constructor Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeView Constructor Example</h3>
<asp:PlaceHolder id="ControlPlaceHolder" runat="server">
</asp:PlaceHolder>
<asp:XmlDataSource id="BookXmlDataSource"
DataFile="Book.xml"
runat="server">
</asp:XmlDataSource>
<br /><br />
<asp:Label id="Message" runat="server"/>
</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>
注釈
クラスはTreeNodeBindingCollection、コントロール内TreeViewのオブジェクトのTreeNodeBindingコレクションを格納および管理するために使用されます。 コントロールは TreeView 、そのプロパティに TreeNodeBindingCollection クラスを DataBindings 使用します。
DataBindingsプロパティには、TreeNodeBindingデータ項目とバインドするノードの間のリレーションシップを定義するオブジェクトが含まれています。 各データ 項目に複数のプロパティ (複数の属性を持つ XML 要素など) が含まれるデータ ソースにバインドする場合、ノードには既定でデータ項目の メソッドによって ToString
返される値が表示されます。 XML 要素の場合、ノードには要素名が表示されます。これはツリーの基になる構造を示しますが、それ以外の場合はあまり役に立ちません。 ツリー ノード バインドを指定することで、ノードを特定のデータ項目プロパティにバインドできます。 コレクションは DataBindings プログラムで設定できますが、通常は宣言的に設定されます。
ツリー ノードバインドを宣言的に設定するには:
コントロールの開始タグと終了
<DataBindings>
タグの間に開始タグと終了タグを入れ子にします TreeView 。指定するツリー ノード バインドごとに、開始タグと終了
<DataBindings>
タグの間に要素を配置<asp:TreeNodeBinding>
します。
オブジェクトを追加および削除TreeNodeBindingすることで、 をTreeNodeBindingCollectionプログラムで管理できます。 コレクションに オブジェクトをTreeNodeBinding追加するには、 メソッドまたは Insert メソッドをAdd使用します。 コレクションからノードを削除するには、または StateManagedCollection.Clear メソッドをRemoveAtRemove使用します。
クラスでは TreeNodeBindingCollection 、コレクション内の項目にアクセスするいくつかの方法がサポートされています。
インデクサーを Item[] 使用して、特定の TreeNode 0 から始まるインデックスでオブジェクトを直接取得します。
メソッドを StateManagedCollection.GetEnumerator 使用して、コレクションを反復処理するために使用できる列挙子を作成します。
プロパティ
Count |
StateManagedCollection コレクションに格納されている要素の数を取得します。 (継承元 StateManagedCollection) |
Item[Int32] |
TreeNodeBinding オブジェクト内の指定したインデックス位置にある TreeNodeBindingCollection オブジェクトを取得または設定します。 |
メソッド
明示的なインターフェイスの実装
拡張メソッド
Cast<TResult>(IEnumerable) |
IEnumerable の要素を、指定した型にキャストします。 |
OfType<TResult>(IEnumerable) |
指定された型に基づいて IEnumerable の要素をフィルター処理します。 |
AsParallel(IEnumerable) |
クエリの並列化を有効にします。 |
AsQueryable(IEnumerable) |
IEnumerable を IQueryable に変換します。 |
適用対象
こちらもご覧ください
.NET