TreeView.AfterCollapse Event
Occurs after the tree node is collapsed.
Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in System.Windows.Forms.dll)
For more information about how to handle events, see Consuming Events.
The following code example updates all the child tree nodes of a TreeNode when the user changes its checked state. This code requires that you have a Form with a TreeView that has TreeNode objects in its TreeNodeCollection. The TreeNodeCollection should have tree nodes with child nodes.
// Updates all child tree nodes recursively. private void CheckAllChildNodes(TreeNode treeNode, bool nodeChecked) { foreach(TreeNode node in treeNode.Nodes) { node.Checked = nodeChecked; if(node.Nodes.Count > 0) { // If the current node has child nodes, call the CheckAllChildsNodes method recursively. this.CheckAllChildNodes(node, nodeChecked); } } } // NOTE This code can be added to the BeforeCheck event handler instead of the AfterCheck event. // After a tree node's Checked property is changed, all its child nodes are updated to the same value. private void node_AfterCheck(object sender, TreeViewEventArgs e) { // The code only executes if the user caused the checked state to change. if(e.Action != TreeViewAction.Unknown) { if(e.Node.Nodes.Count > 0) { /* Calls the CheckAllChildNodes method, passing in the current Checked value of the TreeNode whose checked state changed. */ this.CheckAllChildNodes(e.Node, e.Node.Checked); } } }
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.