次の方法で共有


TreeNode コンストラクタ (String, Int32, Int32, TreeNode )

ラベル テキスト、子ツリー ノード、およびツリー ノードが選択されているときと選択されていないときに表示するイメージをそれぞれ指定して、TreeNode クラスの新しいインスタンスを初期化します。

名前空間: System.Windows.Forms
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)

構文

'宣言
Public Sub New ( _
    text As String, _
    imageIndex As Integer, _
    selectedImageIndex As Integer, _
    children As TreeNode() _
)
'使用
Dim text As String
Dim imageIndex As Integer
Dim selectedImageIndex As Integer
Dim children As TreeNode()

Dim instance As New TreeNode(text, imageIndex, selectedImageIndex, children)
public TreeNode (
    string text,
    int imageIndex,
    int selectedImageIndex,
    TreeNode[] children
)
public:
TreeNode (
    String^ text, 
    int imageIndex, 
    int selectedImageIndex, 
    array<TreeNode^>^ children
)
public TreeNode (
    String text, 
    int imageIndex, 
    int selectedImageIndex, 
    TreeNode[] children
)
public function TreeNode (
    text : String, 
    imageIndex : int, 
    selectedImageIndex : int, 
    children : TreeNode[]
)

パラメータ

  • text
    新しいツリー ノードのラベル Text
  • imageIndex
    ツリー ノードが選択されていないときに表示する Image のインデックス値。
  • selectedImageIndex
    ツリー ノードが選択されているときに表示する Image のインデックス値。
  • children
    TreeNode オブジェクトの配列。

解説

text パラメータの値はノードの Text プロパティに代入され、ツリー ノードのラベルになります。imageIndex 値と selectedImageIndex 値は、TreeView.ImageList プロパティに割り当てられた ImageList に格納されている Image のインデックス値です。imageIndex パラメータで参照されるイメージは、ツリー ノードが選択されていないときに表示されます。同様に、selectedImageIndex パラメータで参照されるイメージは、ツリー ノードが選択されているときに表示されます。children 配列に格納されているツリー ノードは、Nodes プロパティに格納される TreeNodeCollection に追加されます。

使用例

ImageList を作成して TreeView コントロールに割り当て、TreeView コントロールに TreeNode オブジェクトを設定するコード例を次に示します。ツリー ノードには、選択状態または非選択状態のときに表示される、ImageList からのイメージが割り当てられます。この例は、TreeView が配置された Form があり、それぞれが Order オブジェクトを格納している Customer オブジェクトが配置された ArrayList があることを前提にしています。また、Customer オブジェクトと Order オブジェクトが定義されている必要があります。

Private Sub FillTreeView()
   ' Load the images in an ImageList.
   Dim myImageList As New ImageList()
   myImageList.Images.Add(Image.FromFile("Default.gif"))
   myImageList.Images.Add(Image.FromFile("SelectedDefault.gif"))
   myImageList.Images.Add(Image.FromFile("Root.gif"))
   myImageList.Images.Add(Image.FromFile("UnselectedCustomer.gif"))
   myImageList.Images.Add(Image.FromFile("SelectedCustomer.gif"))
   myImageList.Images.Add(Image.FromFile("UnselectedOrder.gif"))
   myImageList.Images.Add(Image.FromFile("SelectedOrder.gif"))
   
   ' Assign the ImageList to the TreeView.
   myTreeView.ImageList = myImageList
   
   ' Set the TreeView control's default image and selected image indexes.
   myTreeView.ImageIndex = 0
   myTreeView.SelectedImageIndex = 1
   
   ' Set the index of image from the 
   ' ImageList for selected and unselected tree nodes.
   Me.rootImageIndex = 2
   Me.selectedCustomerImageIndex = 3
   Me.unselectedCustomerImageIndex = 4
   Me.selectedOrderImageIndex = 5
   Me.unselectedOrderImageIndex = 6
   
   ' Create the root tree node.
   Dim rootNode As New TreeNode("CustomerList")
   rootNode.ImageIndex = rootImageIndex
   rootNode.SelectedImageIndex = rootImageIndex
   
   ' Add a main root tree node.
   myTreeView.Nodes.Add(rootNode)
   
   ' Add a root tree node for each Customer object in the ArrayList.
   Dim myCustomer As Customer
   For Each myCustomer In  customerArray
      ' Add a child tree node for each Order object.
      Dim countIndex As Integer = 0
      Dim myTreeNodeArray(myCustomer.CustomerOrders.Count) As TreeNode
      Dim myOrder As Order
      For Each myOrder In  myCustomer.CustomerOrders
         ' Add the Order tree node to the array.
         myTreeNodeArray(countIndex) = New TreeNode(myOrder.OrderID, _
            unselectedOrderImageIndex, selectedOrderImageIndex)
         countIndex += 1
      Next myOrder
      ' Add the Customer tree node.
      Dim customerNode As New TreeNode(myCustomer.CustomerName, _
         unselectedCustomerImageIndex, selectedCustomerImageIndex, myTreeNodeArray)
      myTreeView.Nodes(0).Nodes.Add(customerNode)
   Next myCustomer
End Sub
private void FillTreeView()
{
    // Load the images in an ImageList.
    ImageList myImageList = new ImageList();
    myImageList.Images.Add(Image.FromFile("Default.gif"));
    myImageList.Images.Add(Image.FromFile("SelectedDefault.gif"));
    myImageList.Images.Add(Image.FromFile("Root.gif"));
    myImageList.Images.Add(Image.FromFile("UnselectedCustomer.gif"));
    myImageList.Images.Add(Image.FromFile("SelectedCustomer.gif"));
    myImageList.Images.Add(Image.FromFile("UnselectedOrder.gif"));
    myImageList.Images.Add(Image.FromFile("SelectedOrder.gif"));
    
    // Assign the ImageList to the TreeView.
    myTreeView.ImageList = myImageList;
    
    // Set the TreeView control's default image and selected image indexes.
    myTreeView.ImageIndex = 0;
    myTreeView.SelectedImageIndex = 1;

    /* Set the index of image from the 
    ImageList for selected and unselected tree nodes.*/
    this.rootImageIndex = 2;
    this.selectedCustomerImageIndex = 3;
    this.unselectedCustomerImageIndex = 4;
    this.selectedOrderImageIndex = 5;
    this.unselectedOrderImageIndex = 6;
    
    // Create the root tree node.
    TreeNode rootNode = new TreeNode("CustomerList");
    rootNode.ImageIndex = rootImageIndex;
    rootNode.SelectedImageIndex = rootImageIndex;
      
    // Add a main root tree node.
    myTreeView.Nodes.Add(rootNode);

    // Add a root tree node for each Customer object in the ArrayList.
    foreach(Customer myCustomer in customerArray)
    {
        // Add a child tree node for each Order object.
        int countIndex=0;
        TreeNode[] myTreeNodeArray = new TreeNode[myCustomer.CustomerOrders.Count];
        foreach(Order myOrder in myCustomer.CustomerOrders)
        {
            // Add the Order tree node to the array.
            myTreeNodeArray[countIndex] = new TreeNode(myOrder.OrderID,
              unselectedOrderImageIndex, selectedOrderImageIndex);
            countIndex++;
        }
        // Add the Customer tree node.
        TreeNode customerNode = new TreeNode(myCustomer.CustomerName,
            unselectedCustomerImageIndex, selectedCustomerImageIndex, myTreeNodeArray);
        myTreeView.Nodes[0].Nodes.Add(customerNode);
    }
}
void FillTreeView()
{
   
   // Load the images in an ImageList.
   ImageList^ myImageList = gcnew ImageList;
   myImageList->Images->Add( Image::FromFile( "Default.gif" ) );
   myImageList->Images->Add( Image::FromFile( "SelectedDefault.gif" ) );
   myImageList->Images->Add( Image::FromFile( "Root.gif" ) );
   myImageList->Images->Add( Image::FromFile( "UnselectedCustomer.gif" ) );
   myImageList->Images->Add( Image::FromFile( "SelectedCustomer.gif" ) );
   myImageList->Images->Add( Image::FromFile( "UnselectedOrder.gif" ) );
   myImageList->Images->Add( Image::FromFile( "SelectedOrder.gif" ) );
   
   // Assign the ImageList to the TreeView.
   myTreeView->ImageList = myImageList;
   
   // Set the TreeView control's default image and selected image indexes.
   myTreeView->ImageIndex = 0;
   myTreeView->SelectedImageIndex = 1;
   
   /* Set the index of image from the
     ImageList for selected and unselected tree nodes.*/
   this->rootImageIndex = 2;
   this->selectedCustomerImageIndex = 3;
   this->unselectedCustomerImageIndex = 4;
   this->selectedOrderImageIndex = 5;
   this->unselectedOrderImageIndex = 6;
   
   // Create the root tree node.
   TreeNode^ rootNode = gcnew TreeNode( "CustomerList" );
   rootNode->ImageIndex = rootImageIndex;
   rootNode->SelectedImageIndex = rootImageIndex;
   
   // Add a main root tree node.
   myTreeView->Nodes->Add( rootNode );
   
   // Add a root tree node for each Customer object in the ArrayList.
   IEnumerator^ myEnum = customerArray->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Customer^ myCustomer = safe_cast<Customer^>(myEnum->Current);
      
      // Add a child tree node for each Order object.
      int countIndex = 0;
      array<TreeNode^>^myTreeNodeArray = gcnew array<TreeNode^>(myCustomer->CustomerOrders->Count);
      IEnumerator^ myEnum = myCustomer->CustomerOrders->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         Order^ myOrder = safe_cast<Order^>(myEnum->Current);
         
         // Add the Order tree node to the array.
         myTreeNodeArray[ countIndex ] = gcnew TreeNode( myOrder->OrderID,unselectedOrderImageIndex,selectedOrderImageIndex );
         countIndex++;
      }
      TreeNode^ customerNode = gcnew TreeNode( myCustomer->CustomerName,unselectedCustomerImageIndex,selectedCustomerImageIndex,myTreeNodeArray );
      myTreeView->Nodes[ 0 ]->Nodes->Add( customerNode );
   }
}
private void FillTreeView()
{
    // Load the images in an ImageList.
    ImageList myImageList = new ImageList();
    myImageList.get_Images().Add(Image.FromFile("Default.gif"));
    myImageList.get_Images().Add(Image.FromFile("SelectedDefault.gif"));
    myImageList.get_Images().Add(Image.FromFile("Root.gif"));
    myImageList.get_Images().Add(Image.FromFile("UnselectedCustomer.gif"));
    myImageList.get_Images().Add(Image.FromFile("SelectedCustomer.gif"));
    myImageList.get_Images().Add(Image.FromFile("UnselectedOrder.gif"));
    myImageList.get_Images().Add(Image.FromFile("SelectedOrder.gif"));
    // Assign the ImageList to the TreeView.
    myTreeView.set_ImageList(myImageList);
    // Set the TreeView control's default image and selected image indexes.
    myTreeView.set_ImageIndex(0);
    myTreeView.set_SelectedImageIndex(1);

    /* Set the index of image from the 
       ImageList for selected and unselected tree nodes.*/
    this.rootImageIndex = 2;
    this.selectedCustomerImageIndex = 3;
    this.unselectedCustomerImageIndex = 4;
    this.selectedOrderImageIndex = 5;
    this.unselectedOrderImageIndex = 6;
    // Create the root tree node.
    TreeNode rootNode = new TreeNode("CustomerList");
    rootNode.set_ImageIndex(rootImageIndex);
    rootNode.set_SelectedImageIndex(rootImageIndex);
    // Add a main root tree node.
    myTreeView.get_Nodes().Add(rootNode);
    // Add a root tree node for each Customer object in the ArrayList.
    for (int iCtr1 = 0; iCtr1 < customerArray.get_Count(); iCtr1++) {
        Customer myCustomer = (Customer)customerArray.get_Item(iCtr1);
        // Add a child tree node for each Order object.
        int countIndex = 0;
        TreeNode myTreeNodeArray[] =
            new TreeNode[myCustomer.customerOrders.get_Count()];
        for (int iCtr2 = 0; iCtr2 < myCustomer.customerOrders.get_Count();
            iCtr2++) {
            Order myOrder = (Order)myCustomer.customerOrders.get_Item(iCtr2);
            // Add the Order tree node to the array.
            myTreeNodeArray.set_Item(countIndex,
                new TreeNode(myOrder.orderID, unselectedOrderImageIndex,
                selectedOrderImageIndex));
            countIndex++;
        }
        // Add the Customer tree node.
        TreeNode customerNode = new TreeNode(myCustomer.customerName,
            unselectedCustomerImageIndex, selectedCustomerImageIndex,
            myTreeNodeArray);
        myTreeView.get_Nodes().get_Item(0).get_Nodes().Add(customerNode);
    }
} //FillTreeView

プラットフォーム

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

参照

関連項目

TreeNode クラス
TreeNode メンバ
System.Windows.Forms 名前空間
TreeView
TreeNodeCollection