TreeNodeCollection.Add Method

Definition

Adds a new tree node to the collection.

Overloads

Add(String)

Adds a new tree node with the specified label text to the end of the current tree node collection.

Add(TreeNode)

Adds a previously created tree node to the end of the tree node collection.

Add(String, String)

Creates a new tree node with the specified key and text, and adds it to the collection.

Add(String, String, Int32)

Creates a tree node with the specified key, text, and image, and adds it to the collection.

Add(String, String, String)

Creates a tree node with the specified key, text, and image, and adds it to the collection.

Add(String, String, Int32, Int32)

Creates a tree node with the specified key, text, and images, and adds it to the collection.

Add(String, String, String, String)

Creates a tree node with the specified key, text, and images, and adds it to the collection.

Add(String)

Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs

Adds a new tree node with the specified label text to the end of the current tree node collection.

C#
public virtual System.Windows.Forms.TreeNode Add(string text);
C#
public virtual System.Windows.Forms.TreeNode Add(string? text);

Parameters

text
String

The label text displayed by the TreeNode.

Returns

A TreeNode that represents the tree node being added to the collection.

Examples

The following code example displays customer information in a TreeView control. The root tree nodes display customer names, and the child tree nodes display the order numbers assigned to each customer. In this example, 1,000 customers are displayed with 15 orders each. The repainting of the TreeView is suppressed by using the BeginUpdate and EndUpdate methods, and a wait Cursor is displayed while the TreeView creates and paints the TreeNode objects. This example requires that you have a Customer object that can hold a collection of Order objects. It also requires that you have created an instance of a TreeView control on a Form.

C#

// The basic Customer class.
public class Customer : System.Object
{
   private string custName = "";
   protected ArrayList custOrders = new ArrayList();

   public Customer(string customername)
   {
      this.custName = customername;
   }

   public string CustomerName
   {      
      get{return this.custName;}
      set{this.custName = value;}
   }

   public ArrayList CustomerOrders 
   {
      get{return this.custOrders;}
   }
} // End Customer class 

// The basic customer Order class.
public class Order : System.Object
{
   private string ordID = "";

   public Order(string orderid)
   {
      this.ordID = orderid;
   }

   public string OrderID
   {      
      get{return this.ordID;}
      set{this.ordID = value;}
   }
} // End Order class

// Create a new ArrayList to hold the Customer objects.
private ArrayList customerArray = new ArrayList(); 

private void FillMyTreeView()
{
   // Add customers to the ArrayList of Customer objects.
   for(int x=0; x<1000; x++)
   {
      customerArray.Add(new Customer("Customer" + x.ToString()));
   }

   // Add orders to each Customer object in the ArrayList.
   foreach(Customer customer1 in customerArray)
   {
      for(int y=0; y<15; y++)
      {
         customer1.CustomerOrders.Add(new Order("Order" + y.ToString()));    
      }
   }

   // Display a wait cursor while the TreeNodes are being created.
   Cursor.Current = new Cursor("MyWait.cur");
        
   // Suppress repainting the TreeView until all the objects have been created.
   treeView1.BeginUpdate();

   // Clear the TreeView each time the method is called.
   treeView1.Nodes.Clear();

   // Add a root TreeNode for each Customer object in the ArrayList.
   foreach(Customer customer2 in customerArray)
   {
      treeView1.Nodes.Add(new TreeNode(customer2.CustomerName));
          
      // Add a child treenode for each Order object in the current Customer object.
      foreach(Order order1 in customer2.CustomerOrders)
      {
         treeView1.Nodes[customerArray.IndexOf(customer2)].Nodes.Add(
           new TreeNode(customer2.CustomerName + "." + order1.OrderID));
      }
   }

   // Reset the cursor to the default for all controls.
   Cursor.Current = Cursors.Default;

   // Begin repainting the TreeView.
   treeView1.EndUpdate();
}

Remarks

You can also add new TreeNode objects to the collection by using the AddRange or Insert methods.

To remove a TreeNode that you previously added, use the Remove, RemoveAt, or Clear methods.

See also

Applies to

.NET Framework 4.8.1 and other versions
Product Versions
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Add(TreeNode)

Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs

Adds a previously created tree node to the end of the tree node collection.

C#
public virtual int Add(System.Windows.Forms.TreeNode node);

Parameters

node
TreeNode

The TreeNode to add to the collection.

Returns

The zero-based index value of the TreeNode added to the tree node collection.

Exceptions

The node is currently assigned to another TreeView.

Examples

The following code example displays customer information in a TreeView control. The root tree nodes display customer names, and the child tree nodes display the order numbers assigned to each customer. In this example, 1,000 customers are displayed with 15 orders each. The repainting of the TreeView is suppressed by using the BeginUpdate and EndUpdate methods, and a wait Cursor is displayed while the TreeView creates and paints the TreeNode objects. This example requires that you have a Customer object that can hold a collection of Order objects. It also requires that you have created an instance of a TreeView control on a Form.

C#

// The basic Customer class.
public class Customer : System.Object
{
   private string custName = "";
   protected ArrayList custOrders = new ArrayList();

   public Customer(string customername)
   {
      this.custName = customername;
   }

   public string CustomerName
   {      
      get{return this.custName;}
      set{this.custName = value;}
   }

   public ArrayList CustomerOrders 
   {
      get{return this.custOrders;}
   }
} // End Customer class 

// The basic customer Order class.
public class Order : System.Object
{
   private string ordID = "";

   public Order(string orderid)
   {
      this.ordID = orderid;
   }

   public string OrderID
   {      
      get{return this.ordID;}
      set{this.ordID = value;}
   }
} // End Order class

// Create a new ArrayList to hold the Customer objects.
private ArrayList customerArray = new ArrayList(); 

private void FillMyTreeView()
{
   // Add customers to the ArrayList of Customer objects.
   for(int x=0; x<1000; x++)
   {
      customerArray.Add(new Customer("Customer" + x.ToString()));
   }

   // Add orders to each Customer object in the ArrayList.
   foreach(Customer customer1 in customerArray)
   {
      for(int y=0; y<15; y++)
      {
         customer1.CustomerOrders.Add(new Order("Order" + y.ToString()));    
      }
   }

   // Display a wait cursor while the TreeNodes are being created.
   Cursor.Current = new Cursor("MyWait.cur");
        
   // Suppress repainting the TreeView until all the objects have been created.
   treeView1.BeginUpdate();

   // Clear the TreeView each time the method is called.
   treeView1.Nodes.Clear();

   // Add a root TreeNode for each Customer object in the ArrayList.
   foreach(Customer customer2 in customerArray)
   {
      treeView1.Nodes.Add(new TreeNode(customer2.CustomerName));
          
      // Add a child treenode for each Order object in the current Customer object.
      foreach(Order order1 in customer2.CustomerOrders)
      {
         treeView1.Nodes[customerArray.IndexOf(customer2)].Nodes.Add(
           new TreeNode(customer2.CustomerName + "." + order1.OrderID));
      }
   }

   // Reset the cursor to the default for all controls.
   Cursor.Current = Cursors.Default;

   // Begin repainting the TreeView.
   treeView1.EndUpdate();
}

Remarks

This version of the Add method allows you to add previously created TreeNode objects to the end of the tree node collection.

You can also add new TreeNode objects to the collection by using the AddRange or Insert methods.

To remove a TreeNode that you previously added, use the Remove, RemoveAt, or Clear methods.

Note

A TreeNode can be assigned to only one TreeView control at a time. To add the tree node to a new tree view control, you must remove it from the other tree view first or clone it.

See also

Applies to

.NET Framework 4.8.1 and other versions
Product Versions
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Add(String, String)

Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs

Creates a new tree node with the specified key and text, and adds it to the collection.

C#
public virtual System.Windows.Forms.TreeNode Add(string key, string text);
C#
public virtual System.Windows.Forms.TreeNode Add(string? key, string? text);

Parameters

key
String

The name of the tree node.

text
String

The text to display in the tree node.

Returns

The TreeNode that was added to the collection.

Remarks

The Name property corresponds to the key for a TreeNode in the TreeNodeCollection.

You can also add new TreeNode objects to the collection by using the AddRange or Insert methods.

Applies to

.NET Framework 4.8.1 and other versions
Product Versions
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Add(String, String, Int32)

Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs

Creates a tree node with the specified key, text, and image, and adds it to the collection.

C#
public virtual System.Windows.Forms.TreeNode Add(string key, string text, int imageIndex);
C#
public virtual System.Windows.Forms.TreeNode Add(string? key, string? text, int imageIndex);

Parameters

key
String

The name of the tree node.

text
String

The text to display in the tree node.

imageIndex
Int32

The index of the image to display in the tree node.

Returns

The TreeNode that was added to the collection.

Remarks

The Name property corresponds to the key for a TreeNode in the TreeNodeCollection.

The imageIndex parameter refers to an image in the ImageList property of the parent TreeView.

The tree node is added to the end of the collection. You can also add new TreeNode objects to the collection by using the AddRange or Insert methods.

Applies to

.NET Framework 4.8.1 and other versions
Product Versions
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Add(String, String, String)

Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs

Creates a tree node with the specified key, text, and image, and adds it to the collection.

C#
public virtual System.Windows.Forms.TreeNode Add(string key, string text, string imageKey);
C#
public virtual System.Windows.Forms.TreeNode Add(string? key, string? text, string? imageKey);

Parameters

key
String

The name of the tree node.

text
String

The text to display in the tree node.

imageKey
String

The image to display in the tree node.

Returns

The TreeNode that was added to the collection.

Remarks

The Name property corresponds to the key for a TreeNode in the TreeNodeCollection.

The tree node is added to the end of the collection. You can also add new TreeNode objects to the collection by using the AddRange or Insert methods.

The imageKey parameter refers to an image in the ImageList property of the parent TreeView.

Applies to

.NET Framework 4.8.1 and other versions
Product Versions
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Add(String, String, Int32, Int32)

Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs

Creates a tree node with the specified key, text, and images, and adds it to the collection.

C#
public virtual System.Windows.Forms.TreeNode Add(string key, string text, int imageIndex, int selectedImageIndex);
C#
public virtual System.Windows.Forms.TreeNode Add(string? key, string? text, int imageIndex, int selectedImageIndex);

Parameters

key
String

The name of the tree node.

text
String

The text to display in the tree node.

imageIndex
Int32

The index of the image to display in the tree node.

selectedImageIndex
Int32

The index of the image to be displayed in the tree node when it is in a selected state.

Returns

The tree node that was added to the collection.

Remarks

The Name property corresponds to the key for a TreeNode in the TreeNodeCollection.

The tree node is added to the end of the collection. You can also add new TreeNode objects to the collection by using the AddRange or Insert methods.

The imageIndex parameter refers to an image in the ImageList property of the parent TreeView.

The selectedImageIndex parameter refers to an image in the StateImageList property of the parent TreeView.

Applies to

.NET Framework 4.8.1 and other versions
Product Versions
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Add(String, String, String, String)

Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs
Source:
TreeNodeCollection.cs

Creates a tree node with the specified key, text, and images, and adds it to the collection.

C#
public virtual System.Windows.Forms.TreeNode Add(string key, string text, string imageKey, string selectedImageKey);
C#
public virtual System.Windows.Forms.TreeNode Add(string? key, string? text, string? imageKey, string? selectedImageKey);

Parameters

key
String

The name of the tree node.

text
String

The text to display in the tree node.

imageKey
String

The key of the image to display in the tree node.

selectedImageKey
String

The key of the image to display when the node is in a selected state.

Returns

The TreeNode that was added to the collection.

Remarks

The Name property corresponds to the key for a TreeNode in the TreeNodeCollection.

The tree node is added to the end of the collection. You can also add new TreeNode objects to the collection by using the AddRange or Insert methods.

The imageKey parameter refers to an image in the ImageList property of the parent TreeView.

The selectedImageKey parameter refers to an image in the StateImageList property of the parent TreeView.

Applies to

.NET Framework 4.8.1 and other versions
Product Versions
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10