Used treeview.SelectedNode
to select a child node. How to invoke treeview.AfterSelect
event when a node is selected programmatically?
this.treeView1.SelectedNode = this.treeView1.Nodes[0].Nodes[0].Nodes[0].Nodes[0];
if (this.treeView1.Nodes[0].Nodes[0].Nodes[0].Nodes[0].IsSelected)
{
MessageBox.Show("Node is selected");
}
yourNode.Toggle();
//use that function on your node, it toggles it
treeViewMain.SelectedNode = treeViewMain.Nodes.Find(searchNode, true)[0];
where searchNode is the name of the node. I'm personally using a combo "Node + Panel" where Node name is Node + and the same tag is also set on panel of choice. With this command + scan of panels by tag i'm usually able to work a treeview+panel full menu set.
TreeViewItem tempItem = new TreeViewItem();
TreeViewItem tempItem1 = new TreeViewItem();
tempItem = (TreeViewItem) treeView1.Items.GetItemAt(0); // Selecting the first of the top level nodes
tempItem1 = (TreeViewItem)tempItem.Items.GetItemAt(0); // Selecting the first child of the first first level node
SelectedCategoryHeaderString = tempItem.Header.ToString(); // gets the header for the first top level node
SelectedCategoryHeaderString = tempItem1.Header.ToString(); // gets the header for the first child node of the first top level node
tempItem.IsExpanded = true; // will expand the first node
private void btn_CollapseAllAndExpandFirstLevelUnderRoot(object sender, EventArgs e)
{
//this example collapses everything, then expands the first level under the root node.
tv_myTreeView.CollapseAll();
TreeNode tn = tv_myTreeView.Nodes[0];
tn.Expand();
}
Call the TreeView.OnAfterSelect()
protected method after you programatically select the node.
Source: Stackoverflow.com