Condividi tramite


TreeNodeCollection.Contains(TreeNode) Metodo

Definizione

Determina se il nodo della struttura ad albero specificato è un membro dell'insieme.

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

Parametri

node
TreeNode

Oggetto TreeNode da individuare nella raccolta.

Restituisce

Boolean

true se l'oggetto TreeNode è un membro dell'insieme; in caso contrario, false.

Esempio

Nell'esempio di codice seguente viene determinato se un oggetto specificato TreeNode si trova all'interno di un TreeNodeCollectionoggetto e quindi enumera la raccolta. In questo esempio è necessario disporre di un Form oggetto con un TreeView oggetto che TreeNodeCollection contiene un TreeNode oggetto denominato 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

Commenti

Questo metodo consente di determinare se un TreeNode oggetto è un membro della raccolta prima di tentare di eseguire operazioni su TreeNode. È possibile utilizzare questo metodo per confermare che un TreeNode oggetto è stato aggiunto a o è ancora un membro della raccolta.

Il tempo impiegato da questo metodo è proporzionale alle dimensioni della raccolta di nodi, pertanto è consigliabile evitare di usarlo con raccolte di grandi dimensioni.

Questo metodo controlla solo l'uguaglianza dei riferimenti. Non è possibile usarlo per determinare se un nodo equivalente ma diverso si trova nella raccolta.

Nota

Un'implicazione del requisito di uguaglianza dei riferimenti è che non è possibile personalizzare il comportamento di questo metodo per i tipi derivati TreeNode eseguendo l'override del Equals metodo della TreeNode classe .

Si applica a