Udostępnij za pośrednictwem


TreeNodeCollection.Contains(TreeNode) Metoda

Definicja

Określa, czy określony węzeł drzewa jest członkiem kolekcji.

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

Parametry

node
TreeNode

Element TreeNode do zlokalizowania w kolekcji.

Zwraca

true jeśli element TreeNode jest członkiem kolekcji; falsew przeciwnym razie .

Przykłady

Poniższy przykład kodu określa, czy określony TreeNode element znajduje się w obiekcie TreeNodeCollection, a następnie wylicza kolekcję. W tym przykładzie jest Form wymagany element z elementem TreeView z elementem TreeNodeCollection zawierającym TreeNode nazwę 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

Uwagi

Ta metoda umożliwia określenie, czy element TreeNode jest członkiem kolekcji przed podjęciem próby wykonania operacji na obiekcie TreeNode. Możesz użyć tej metody, aby potwierdzić, że TreeNode element został dodany do kolekcji lub jest nadal członkiem kolekcji.

Czas potrzebny tej metody jest proporcjonalny do rozmiaru kolekcji węzłów, dlatego warto unikać używania jej z dużymi kolekcjami.

Ta metoda sprawdza tylko równość odwołań. Nie można go użyć do określenia, czy odpowiednik, ale inny węzeł znajduje się w kolekcji.

Uwaga

Jednym z implikacji wymagań dotyczących równości odwołań jest to, że nie można dostosować zachowania tej metody dla typów pochodnych TreeNode przez zastąpienie Equals metody TreeNode klasy.

Dotyczy