다음을 통해 공유


TreeNodeCollection.Contains(TreeNode) 메서드

정의

지정된 트리 노드가 컬렉션의 멤버인지 확인합니다.

public:
 bool Contains(System::Windows::Forms::TreeNode ^ node);
public bool Contains (System.Windows.Forms.TreeNode node);
member this.Contains : System.Windows.Forms.TreeNode -> bool
Public Function Contains (node As TreeNode) As Boolean

매개 변수

node
TreeNode

컬렉션에서 찾을 TreeNode입니다.

반환

Boolean

TreeNode이 컬렉션의 멤버이면 true이고, 그렇지 않으면 false입니다.

예제

다음 코드 예제에서는 지정된 TreeNode 것이 a 내에 TreeNodeCollection있는지 확인한 다음 컬렉션을 열거합니다. 이 예제에서는 명명myTreeNode2TreeView Form 항목이 포함된 with가 TreeNodeCollection TreeNode 있어야 합니다.

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.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";
   }
}
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

설명

이 메서드를 사용하면 에 대한 TreeNode작업을 수행하기 전에 컬렉션의 멤버인지 여부를 TreeNode 확인할 수 있습니다. 이 메서드를 사용하여 컬렉션에 TreeNode 추가되었거나 여전히 컬렉션의 멤버인지 확인할 수 있습니다.

이 메서드가 걸리는 시간은 노드 컬렉션의 크기에 비례하므로 큰 컬렉션에서 사용하지 않도록 할 수 있습니다.

이 메서드는 참조 같음만 확인합니다. 동일한 노드가 컬렉션에 있는지 여부를 확인하는 데 사용할 수 없습니다.

참고

참조 같음 요구 사항의 한 가지 의미는 클래스의 메서드를 재정의하여 파생 TreeNode 형식에 대해 이 메서드의 동작을 Equals 사용자 지정할 수 없다는 것입니다 TreeNode .

적용 대상