TreeNodeCollection.Contains(TreeNode) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Określa, czy określony węzeł drzewa jest elementem członkowskim 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
Zwraca
truejeśli element TreeNode jest elementem członkowskim kolekcji; w przeciwnym razie . false
Przykłady
Poniższy przykład kodu określa, czy określony TreeNode znajduje się w obiekcie TreeNodeCollection, a następnie wylicza kolekcję. W tym przykładzie wymagany jest Form obiekt z elementem TreeView TreeNodeCollection zawierającym TreeNode element o nazwie 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 elementem członkowskim kolekcji przed podjęciem próby wykonania operacji na obiekcie TreeNode. Za pomocą tej metody można 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 jej użyć do określenia, czy w kolekcji znajduje się odpowiednik, ale inny węzeł.
Uwaga
Jednym z implikacji wymagania dotyczącego 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.