TreeView.ItemHeight Property

Gets or sets the height of each tree node in the tree view control.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in

property int ItemHeight {
	int get ();
	void set (int value);
/** @property */
public int get_ItemHeight ()

/** @property */
public void set_ItemHeight (int value)

public function get ItemHeight () : int

public function set ItemHeight (value : int)

Property Value

The height, in pixels, of each tree node in the tree view.

Exception typeCondition


The assigned value is less than one.


The assigned value is greater than the MaxValue value.

If the item height is set to a value larger than the height of the tree view control, calling the TreeNode.EnsureVisible method will have unexpected results.

The following code example changes the size NodeFont to the specified size and adjusts the ItemHeight of the tree node's parent TreeView control. This example requires that you have a Form with a TreeView control with a collection of TreeNode objects, and a ComboBox containing font sizes.

   void Button1_Click( Object^ /*sender*/, EventArgs^ /*e*/ )
      myTreeView->ItemHeight = 5;
      myTreeView->SelectedNode->NodeFont = gcnew System::Drawing::Font( "Arial",5 );
      // Get the font size from combobox.
      String^ selectedString = myComboBox->SelectedItem->ToString();
      int myNodeFontSize = Int32::Parse( selectedString );
      // Set the font of root node.
      myTreeView->SelectedNode->NodeFont = gcnew System::Drawing::Font( "Arial",(float)myNodeFontSize );
      for ( int i = 0; i < myTreeView->Nodes[ 0 ]->Nodes->Count; i++ )
         // Set the font of child nodes.
         myTreeView->Nodes[ 0 ]->Nodes[ i ]->NodeFont = gcnew System::Drawing::Font( "Arial",(float)myNodeFontSize );

      // Get the bounds of the tree node.
      Rectangle myRectangle = myTreeView->SelectedNode->Bounds;
      int myNodeHeight = myRectangle.Height;
      if ( myNodeHeight < myNodeFontSize )
         myNodeHeight = myNodeFontSize;

      myTreeView->ItemHeight = myNodeHeight + 4;

private void Button1_Click(Object sender, EventArgs e)
    myTreeView.get_SelectedNode().set_NodeFont(new Font("Arial", 5));
    // Get the font size from combobox.
    String selectedString = myComboBox.get_SelectedItem().ToString();
    int myNodeFontSize = Int32.Parse(selectedString);
    // Set the font of root node.
    myTreeView.get_SelectedNode().set_NodeFont(new Font("Arial",
    for (int i = 0; i < myTreeView.get_Nodes().get_Item(0).
        get_Nodes().get_Count(); i++) {
        // Set the font of child nodes.
            set_NodeFont(new Font("Arial", myNodeFontSize));
    // Get the bounds of the tree node.
    Rectangle myRectangle = myTreeView.get_SelectedNode().get_Bounds();
    int myNodeHeight = myRectangle.get_Height();
    if (myNodeHeight < myNodeFontSize) {
        myNodeHeight = myNodeFontSize;
    myTreeView.set_ItemHeight(myNodeHeight + 4);
} //Button1_Click

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

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0