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 컬렉션에서 찾을 위치입니다.

반품

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

예제

다음 코드 예제에서는 지정된 TreeNode 된 컬렉션 내에 TreeNodeCollection있는지 확인 하 고 컬렉션을 열거 합니다. 이 예제를 FormTreeView 사용하려면 명명TreeNodeCollection된 것을 포함하는 a TreeNode 가 있어야 합니다myTreeNode2.

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 .

적용 대상