c#winform中如何获取treeview的所有项数目。在线等,满意给高分。
c#winform中如何获取treeview中所有项的数目,包括子节点。并且如何获取当前点击项的顺序值(从上往下的顺序,包括子节点)?
[解决办法]
写个遍历吧,用一个int变量累加得到顺序
[解决办法]
//所有节点的个数
int count = treeView1.GetNodeCount(true);
//当前节点序号
void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
int sum = getIndex(e.Node, 0);
MessageBox.Show(sum.ToString());
}
int getIndex(TreeNode node, int sum)
{
if (node.PrevNode == null)
{
if (node.Parent == null)
{
return sum + 1;
}
else
{
return getIndex(node.Parent, sum + 1);
}
}
else
{
sum += node.PrevNode.GetNodeCount(true) + 1;
return getIndex(node.PrevNode, sum);
}
}