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
Параметры
Возвращаемое значение
Значение true
, если объект TreeNode является членом коллекции; в противном случае — значение false
.
Примеры
В следующем примере кода определяется, находится ли указанный TreeNode объект в TreeNodeCollection, а затем перечисляется коллекция . В этом примере требуется, чтобы у вас был Form с , который содержит TreeNodeCollectionTreeNode объект с TreeView именем 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 класса .