指定したツリー ノードがコレクションのメンバかどうかを確認します。
名前空間: System.Windows.Forms
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)
構文
'宣言
Public Function Contains ( _
node As TreeNode _
) As Boolean
'使用
Dim instance As TreeNodeCollection
Dim node As TreeNode
Dim returnValue As Boolean
returnValue = instance.Contains(node)
public bool Contains (
TreeNode node
)
public:
bool Contains (
TreeNode^ node
)
public boolean Contains (
TreeNode node
)
public function Contains (
node : TreeNode
) : boolean
パラメータ
- node
コレクション内で検索する TreeNode。
戻り値
TreeNode がコレクションのメンバの場合は true。それ以外の場合は false。
解説
このメソッドを使用すると、TreeNode に対する操作を実行する前に、その TreeNode がコレクションのメンバかどうかを確認できます。このメソッドを使用して、TreeNode がコレクションに追加されたことや、依然としてコレクションのメンバであることを確認できます。
このメソッドの実行時間は、ノード コレクションのサイズに比例します。そのため、大きなコレクションではこのメソッドを使用しない場合があります。
このメソッドでは、参照の等価のみがチェックされます。これを使用して、等価だが異なるノードがコレクションに存在するかどうかを判断することはできません。
注意
参照の等価の要件では、TreeNode クラスの Equals メソッドをオーバーライドして、TreeNode の派生型に関するこのメソッドの動作をカスタマイズすることはできません。
使用例
指定した TreeNode が TreeNodeCollection 内にあるかどうかを確認した後で、そのコレクションを列挙するコード例を次に示します。この例は Form に TreeView が配置され、そこに、myTreeNode2
という名前の TreeNode を含む TreeNodeCollection が割り当てられていることを前提としています。
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
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";
}
}
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.get_Nodes();
// Check for a node in the collection.
if (myNodeCollection.Contains(myTreeNode2)) {
myLabel.set_Text(myLabel.get_Text() + "Node2 is at index: "
+ myNodeCollection.IndexOf(myTreeNode2));
}
myLabel.set_Text(myLabel.get_Text()
+ "\n\nElements of the TreeNodeCollection:\n");
// Create an enumerator for the collection.
IEnumerator myEnumerator = myNodeCollection.GetEnumerator();
while (myEnumerator.MoveNext()) {
myLabel.set_Text(myLabel.get_Text()
+ ((TreeNode)myEnumerator.get_Current()).get_Text() + "\n");
}
} //EnumerateTreeNodes
プラットフォーム
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
.NET Framework
サポート対象 : 2.0、1.1、1.0
.NET Compact Framework
サポート対象 : 2.0、1.0
参照
関連項目
TreeNodeCollection クラス
TreeNodeCollection メンバ
System.Windows.Forms 名前空間