This class represents a single node in a TreeView.
You can set its BackColor,
ForeColor, and the Text to
display on the label. The ImageIndex and
SelectedImageIndex can be chosen from the parent
TreeView objects ImageList. The
selection state can be queried with IsSelected.
The node can also be Checked.
If the node has any children in its Nodes
collection (GetNodeCount() can tell you this),
you can Expand() and Collapse() those children, Toggle() the expanded
state, and determine whether the node IsExpanded().
You can get the FirstNode and
LastNode from the child Nodes
list. Contrast this with the NextNode and
PrevNode—these are sibling nodes in the
TreeView rather than children of this node.
Because those nodes may actually be collapsed, you can also retrieve
the NextVisibleNode and
PrevVisibleNode.
You can Remove() the node (and all its children)
from the parent TreeView or scroll it into view
(perhaps expanding any parent nodes) with EnsureVisible().
You can start to edit the node text (if
TreeView.LabelEdit is enabled) with
BeginEdit(), and cancel or commit an edit with
EndEdit(). To query whether the node is being
edited, you may use the IsEditing property.
Note that a TreeNode may appear several times in a
TreeView. The FullPath property
will tell you exactly where you are in the tree control.
public class TreeNode : MarshalByRefObject : ICloneable, System.Runtime.Serialization.ISerializable {
// Public Constructors
public TreeNode();
public TreeNode(string text);
public TreeNode(string text, int imageIndex, int selectedImageIndex);
public TreeNode(string text, int imageIndex, int selectedImageIndex, TreeNode[ ] children);
public TreeNode(string text, TreeNode[ ] children);
// Public Instance Properties
public Color BackColor{set; get; }
public Rectangle Bounds{get; }
public bool Checked{set; get; }
public TreeNode FirstNode{get; }
public Color ForeColor{set; get; }
public string FullPath{get; }
public IntPtr Handle{get; }
public int ImageIndex{set; get; }
public int Index{get; }
public bool IsEditing{get; }
public bool IsExpanded{get; }
public bool IsSelected{get; }
public bool IsVisible{get; }
public TreeNode LastNode{get; }
public TreeNode NextNode{get; }
public TreeNode NextVisibleNode{get; }
public Font NodeFont{set; get; }
public TreeNodeCollection Nodes{get; }
public TreeNode Parent{get; }
public TreeNode PrevNode{get; }
public TreeNode PrevVisibleNode{get; }
public int SelectedImageIndex{set; get; }
public object Tag{set; get; }
public string Text{set; get; }
public TreeView TreeView{get; }
// Public Static Methods
public static TreeNode FromHandle(TreeView tree, IntPtr handle);
// Public Instance Methods
public void BeginEdit();
public virtual object Clone(); // implements ICloneable
public void Collapse();
public void EndEdit(bool cancel);
public void EnsureVisible();
public void Expand();
public void ExpandAll();
public int GetNodeCount(bool includeSubTrees);
public void Remove();
public void Toggle();
public override string ToString(); // overrides object
}