TreeNodeCollection.GetEnumerator メソッド
アセンブリ: System.Web (system.web.dll 内)

Dim instance As TreeNodeCollection Dim returnValue As IEnumerator returnValue = instance.GetEnumerator
public IEnumerator GetEnumerator ()
public: virtual IEnumerator^ GetEnumerator () sealed
public final IEnumerator GetEnumerator ()
public final function GetEnumerator () : IEnumerator
TreeNodeCollection を反復処理するために使用できる列挙子。

GetEnumerator メソッドを使用して、TreeNodeCollection 内の各項目を取得するときに簡単に反復処理できる列挙子を作成します。現在ポインタが指している列挙子内の項目を取得するには、IEnumerator.Current プロパティを使用します。IEnumerator.MoveNext メソッドを使用して、次の項目に移動します。列挙子をコレクションの先頭に戻す必要がある場合は、IEnumerator.Reset メソッドを使用します。
![]() |
---|
列挙子を作成した後、または IEnumerator.Reset メソッドを使用した後は、IEnumerator.MoveNext メソッドを呼び出す必要があります。このメソッドを呼び出さないと、IEnumerator.Current プロパティで表される項目は未定義になります。 |
または、CopyTo メソッドを使用して、コレクション内の項目にアクセスするための System.Array オブジェクトを作成することもできます。さらに、foreach 構造体または For Each 構造体を使用してコレクションを反復処理することもできます。

GetEnumerator メソッドを使用して、TreeView コントロールのルート ノードを格納している列挙子を作成する方法を次の例に示します。
<%@ Page Language="VB" %> <script runat="server"> Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) ' If the TreeView control contains any root nodes, display the ' text value of each node. If LinksTreeView.Nodes.Count > 0 Then ' Use the GetEnumerator method to create an enumerator ' that contains the root node data. Dim nodeEnumerator As IEnumerator = LinksTreeView.Nodes.GetEnumerator() ' Iterate through the enumerator to display the root nodes. While nodeEnumerator.MoveNext() Message.Text &= (CType(nodeEnumerator.Current, TreeNode)).Text & "<br>" End While Else Message.Text = "The TreeView control does not have any nodes." End If End Sub </script> <html> <body> <form runat="server"> <h3>TreeNodeCollection GetEnumerator Example</h3> <asp:TreeView id="LinksTreeView" Font-Name= "Arial" ForeColor="Blue" runat="server"> <LevelStyles> <asp:TreeNodeStyle ChildNodesPadding="10" Font-Bold="true" Font-Size="12pt" ForeColor="DarkGreen"/> <asp:TreeNodeStyle ChildNodesPadding="5" Font-Bold="true" Font-Size="10pt"/> <asp:TreeNodeStyle ChildNodesPadding="5" Font-UnderLine="true" Font-Size="10pt"/> <asp:TreeNodeStyle ChildNodesPadding="10" Font-Size="8pt"/> </LevelStyles> <Nodes> <asp:TreeNode Text="Table of Contents" Expanded="true"> <asp:TreeNode Text="Chapter One"> <asp:TreeNode Text="Section 1.0"> <asp:TreeNode Text="Topic 1.0.1"/> <asp:TreeNode Text="Topic 1.0.2"/> <asp:TreeNode Text="Topic 1.0.3"/> </asp:TreeNode> <asp:TreeNode Text="Section 1.1"> <asp:TreeNode Text="Topic 1.1.1"/> <asp:TreeNode Text="Topic 1.1.2"/> <asp:TreeNode Text="Topic 1.1.3"/> <asp:TreeNode Text="Topic 1.1.4"/> </asp:TreeNode> </asp:TreeNode> <asp:TreeNode Text="Chapter Two"> <asp:TreeNode Text="Section 2.0"> <asp:TreeNode Text="Topic 2.0.1"> <asp:TreeNode Text="Subtopic 1"/> <asp:TreeNode Text="Subtopic 2"/> </asp:TreeNode> <asp:TreeNode Text="Topic 2.0.2"/> </asp:TreeNode> </asp:TreeNode> </asp:TreeNode> <asp:TreeNode Text="Appendix A" /> <asp:TreeNode Text="Appendix B" /> <asp:TreeNode Text="Appendix C" /> </Nodes> </asp:TreeView> <br><br> <asp:Label id="Message" runat="server"/> </form> </body> </html>
<%@ Page Language="C#" %> <script runat="server"> void Page_Load(Object sender, EventArgs e) { // If the TreeView control contains any root nodes, display the // text value of each node. if (LinksTreeView.Nodes.Count > 0) { // Use the GetEnumerator method to create an enumerator // that contains the root node data. IEnumerator nodeEnumerator = LinksTreeView.Nodes.GetEnumerator(); // Iterate through the enumerator to display the root nodes. while (nodeEnumerator.MoveNext()) { Message.Text += ((TreeNode)(nodeEnumerator.Current)).Text + "<br>"; } } else { Message.Text = "The TreeView control does not have any nodes."; } } </script> <html> <body> <form runat="server"> <h3>TreeNodeCollection GetEnumerator Example</h3> <asp:TreeView id="LinksTreeView" Font-Name= "Arial" ForeColor="Blue" runat="server"> <LevelStyles> <asp:TreeNodeStyle ChildNodesPadding="10" Font-Bold="true" Font-Size="12pt" ForeColor="DarkGreen"/> <asp:TreeNodeStyle ChildNodesPadding="5" Font-Bold="true" Font-Size="10pt"/> <asp:TreeNodeStyle ChildNodesPadding="5" Font-UnderLine="true" Font-Size="10pt"/> <asp:TreeNodeStyle ChildNodesPadding="10" Font-Size="8pt"/> </LevelStyles> <Nodes> <asp:TreeNode Text="Table of Contents" Expanded="true"> <asp:TreeNode Text="Chapter One"> <asp:TreeNode Text="Section 1.0"> <asp:TreeNode Text="Topic 1.0.1"/> <asp:TreeNode Text="Topic 1.0.2"/> <asp:TreeNode Text="Topic 1.0.3"/> </asp:TreeNode> <asp:TreeNode Text="Section 1.1"> <asp:TreeNode Text="Topic 1.1.1"/> <asp:TreeNode Text="Topic 1.1.2"/> <asp:TreeNode Text="Topic 1.1.3"/> <asp:TreeNode Text="Topic 1.1.4"/> </asp:TreeNode> </asp:TreeNode> <asp:TreeNode Text="Chapter Two"> <asp:TreeNode Text="Section 2.0"> <asp:TreeNode Text="Topic 2.0.1"> <asp:TreeNode Text="Subtopic 1"/> <asp:TreeNode Text="Subtopic 2"/> </asp:TreeNode> <asp:TreeNode Text="Topic 2.0.2"/> </asp:TreeNode> </asp:TreeNode> </asp:TreeNode> <asp:TreeNode Text="Appendix A" /> <asp:TreeNode Text="Appendix B" /> <asp:TreeNode Text="Appendix C" /> </Nodes> </asp:TreeView> <br><br> <asp:Label id="Message" runat="server"/> </form> </body> </html>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


TreeNodeCollection.GetEnumerator メソッド
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)

Dim instance As TreeNodeCollection Dim returnValue As IEnumerator returnValue = instance.GetEnumerator
public IEnumerator GetEnumerator ()
public: virtual IEnumerator^ GetEnumerator () sealed
public final IEnumerator GetEnumerator ()
public final function GetEnumerator () : IEnumerator
ツリー ノードのコレクションを表す IEnumerator。

指定した TreeNode が TreeNodeCollection 内にあるかどうかを確認した後で、そのコレクションを列挙するコード例を次に示します。この例は Form に TreeView が配置され、そこに、myTreeNode2 という名前の TreeNode を含む TreeNodeCollection が割り当てられていることを前提としています。
Private Sub EnumerateTreeNodes() Dim myNodeCollection As TreeNodeCollection = myTreeView.Nodes ' Check for a node in the collection. If myNodeCollection.Contains(myTreeNode2) Then myLabel.Text += "Node2 is at index: " + myNodeCollection.IndexOf(myTreeNode2) End If myLabel.Text += ControlChars.Cr + ControlChars.Cr + _ "Elements of the TreeNodeCollection:" + ControlChars.Cr ' Create an enumerator for the collection. Dim myEnumerator As IEnumerator = myNodeCollection.GetEnumerator() While myEnumerator.MoveNext() myLabel.Text += CType(myEnumerator.Current, TreeNode).Text + ControlChars.Cr End While End Sub
private void EnumerateTreeNodes() { TreeNodeCollection myNodeCollection = myTreeView.Nodes; // Check for a node in the collection. if (myNodeCollection.Contains(myTreeNode2)) { myLabel.Text += "Node2 is at index: " + myNodeCollection.IndexOf(myTreeNode2); } myLabel.Text += "\n\nElements of the TreeNodeCollection:\n"; // Create an enumerator for the collection. IEnumerator myEnumerator = myNodeCollection.GetEnumerator(); while(myEnumerator.MoveNext()) { myLabel.Text += ((TreeNode)myEnumerator.Current).Text +"\n"; } }
void EnumerateTreeNodes() { TreeNodeCollection^ myNodeCollection = myTreeView->Nodes; // Check for a node in the collection. if ( myNodeCollection->Contains( myTreeNode2 ) ) { myLabel->Text = myLabel->Text + "Node2 is at index: " + myNodeCollection->IndexOf( myTreeNode2 ); } myLabel->Text = myLabel->Text + "\n\nElements of the TreeNodeCollection:\n"; // Create an enumerator for the collection. IEnumerator^ myEnumerator = myNodeCollection->GetEnumerator(); while ( myEnumerator->MoveNext() ) { myLabel->Text = myLabel->Text + (dynamic_cast<TreeNode^>(myEnumerator->Current))->Text + "\n"; } }
private void EnumerateTreeNodes() { TreeNodeCollection myNodeCollection = myTreeView.get_Nodes(); // Check for a node in the collection. if (myNodeCollection.Contains(myTreeNode2)) { myLabel.set_Text(myLabel.get_Text() + "Node2 is at index: " + myNodeCollection.IndexOf(myTreeNode2)); } myLabel.set_Text(myLabel.get_Text() + "\n\nElements of the TreeNodeCollection:\n"); // Create an enumerator for the collection. IEnumerator myEnumerator = myNodeCollection.GetEnumerator(); while (myEnumerator.MoveNext()) { myLabel.set_Text(myLabel.get_Text() + ((TreeNode)myEnumerator.get_Current()).get_Text() + "\n"); } } //EnumerateTreeNodes

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からTreeNodeCollection.GetEnumeratorを検索する場合は、下記のリンクをクリックしてください。

- TreeNodeCollection.GetEnumeratorのページへのリンク