作者:1911530988com | 来源:互联网 | 2023-01-27 18:28
我在AfterSelect里面这样写的AfterSelect(){TreeNodeindextreeView1.SelectedNode;treeView1.Colla
我在AfterSelect里面这样写的
AfterSelect()
{
TreeNode index=treeView1.SelectedNode;
treeView1.CollapseAll();//合拢所有节点
Expd(index);
}
private void Expd(TreeNode node)
{
node.Expand();
if(node.Parent!=null)
{
Expd(node.Parent);
}
}
这样当前选中得肯定是树得根节点,我想设置当前选中是之前得选中得节点。但是我又不能在Expid里面treeView1.SelectedNode=index; 这样他会重复展开,程序会死掉。请各位帮我想想办法
7 个解决方案
private void Expd(TreeNode node)
{
node.Expand();
if(node.Parent!=null)
{
Expd(node.Parent);
}
}
我改成
private void Expd(TreeNode node)
{
if(node.Parent!=null)
{
Expd(node.Parent);
}
node.Expand();
}
还是不行,请教大家
在treeview中如何查找一个值,并选中它
在已经建好的树中如何查找一个文本或者是treenodes的id,找到后选中它?
for(int i=0;i if(TreeView1.Nodes[i]==TextBox1.Text)
{
string index1=TreeView1.Nodes[i].GetNodeIndex();//取得index
TreeView1.SelectedNodeIndex=index1;
}
TreeView有这个属性么?(SelectedNodeIndex)
如果说是 selectednode.index的话是只读的