相关文章推荐

当在同级节点之间或者树系欸但之间有线存在,该值为True,否则为false。默认值为True。

ShowPlusminus属性。该属性表示是否在父节点旁边显示加减号。

例:设置在treeView1控件中的父级节点旁边显示加减号:this.treeView1.ShowPlusminus=true;

CollapseAll()方法

此方法折叠所有树节点。当树系欸但折叠时,只显示父节点。

ExpandAll()方法

此方法展开所有树节点,包括子节点。

GetNodeCount()方法

此方法用于获取TreeView控件中的节点总数。

AfterCheck事件。

该事件在选中显示在树节点旁边的复选框时发生。

语法:public event TreeViewEventHandler AfterCheck

AfterCollapse事件

该事件在树节点展开时发生。语法:

public event TreeViewEventHadler AfterCollapse

AfterExpand事件

该事件在树节点展开时发生。

语法:public event TreeViewEventHandler AfterExpand

AfterLabelEdit事件

该事件在标记树节点标签文本后发生。

语法:public event TreeViewEventHandler AfterLabelEdit

AfterSelect事件。

该事件在选中树节点后发生。

语法:public event TreeViewEventHandler AfterSelect

BeforeCheck事件。

该事件在中选复选框前发生。

public event TreeViewEventHandler BeforeCheck

BeforeCollapse事件。

该事件在树节点折叠前发生。

语法:public event TreeViewEventHandler BeforeCollapse

BeforeExpand事件

该节点在树节点展开前发生。

语法:public event TreeViewEventHandler BeforeExpand

BeforeLabelEdit事件

该事件在编辑树节点标签前发生。

语法:public event TreeViewEventHandler BeforeLabelEdit

BeforeSelect事件

该事件在选定树节点前发生。

语法:public event TreeViewEventHandler BeforeSelect

Click事件

该事件在单击控件时发生。

语法:public event EventHandler Click。

垂直滚动条出来的时候让它显示在最上面

实现:treeView1.TopMode=treeView1.Node[0];

让第一个可见的节点时树里面的第一个节点,滚动条就会在上面了。

设置Node的样式

Node.ForeColor=System.Drawing.Color.Red;

Node.NodeFont=new System.Drawing.Font(“宋体”,9F,System.Drawing.FontStyle.Strikeout,System.Drawing.GraphicsUnit.Point,((byte)(134)));

获取鼠标选中的节点。

TreeView,当用鼠标右键单击或者双击节点时,SelectedNode并不会指向右击的节点;需要在NodeMouseClick和NodeMouseDoubleClick中操作;

private void treeview1_NodeMouseClick(object sender,TreeNodeMouseClickEventArgs e)

TreeNode txSelect=this.treeView1.GetNodeAt(new Point(e.X,e.Y));

this.treeView1.SelectedNode=txSelect;//也可以写成e.Node;

编辑TreeView节点

将LabelEidt设置为true,在树上节点设置右键或者上节点,右键新增重命名选项。

private void ResetToolStripMenuItem_Click(object sender,EventArgs e)

this.menuTree.SelectNode.BeginEdit();

private void menuTree_AfterLabelEdit(object sender,NodeLabelEditEventArgs e)

string name=e.Label;

if (name==null)

//更改后的值=e.Node.Text;

//更改后的值=name;

注:节点的编辑实在Label上做的更改,在编辑状态后,不做操作时e.Label为空,所以在不更改的情况下要把原来的值重新赋值过来。

父节点选中时,子节点全部选中,同级子节点选中时,父节点选中

private void treeView1_AfterCheck(object sender, TreeViewEventArgs e)

if (e.Action == TreeViewAction.ByMouse)

if (e.Node.Nodes != null)

CheckAllChildNode(e.Node);

CheckParentNode(e.Node);

private void CheckAllChildNode(TreeNode node)

foreach (TreeNode childNode in node.Nodes)

childNode.Checked = node.Checked;

if (childNode.Nodes != null)

CheckAllChildNode(childNode);

private void CheckParentNode(TreeNode node)

TreeNode parentNode = node.Parent;

if (parentNode == null)

return;

bool isAllChecked = true;

foreach (TreeNode nodeOhter in parentNode.Nodes)

if (nodeOhter.Checked == false)

isAllChecked = false;

break;

parentNode.Checked = isAllChecked;

if (parentNode.Parent != null)

CheckParentNode(parentNode);

}

分类:
人工智能
  •  
    推荐文章