C# 如何在winforms中添加可编辑的第一个子节点
我有一个表示文件系统的树状视图,我有一个新的文件夹按钮,如果所选节点有一些子节点,它可以正常工作,但是当所选节点没有任何子节点时,它无法添加可编辑的子节点。我正在使用以下代码:C# 如何在winforms中添加可编辑的第一个子节点,c#,treeview,C#,Treeview,我有一个表示文件系统的树状视图,我有一个新的文件夹按钮,如果所选节点有一些子节点,它可以正常工作,但是当所选节点没有任何子节点时,它无法添加可编辑的子节点。我正在使用以下代码: tree.LabelEdit = true; TreeNode node = new TreeNode("New Folder"); if(tree.SelectedNode.Nodes.Count>0) tree.SelectedNode.Expand(); tree.SelectedNode.Nodes
tree.LabelEdit = true;
TreeNode node = new TreeNode("New Folder");
if(tree.SelectedNode.Nodes.Count>0)
tree.SelectedNode.Expand();
tree.SelectedNode.Nodes.Add(node);
if(tree.SelectedNode.Nodes.Count>0)
tree.SelectedNode.Expand();
node.BeginEdit();
有什么想法吗?只需将代码中的两行更改为:
public Form1()
{
InitializeComponent();
tree.SelectedNode = tree.Nodes.Add("Hello", "Hello");
}
private void button1_Click(object sender, EventArgs e)
{
tree.LabelEdit = true;
TreeNode node = new TreeNode("New Folder");
tree.SelectedNode.Nodes.Add(node);
tree.SelectedNode.Expand();
node.BeginEdit();
}
说明:不能展开没有子节点的节点。因此,在展开父节点之前,必须先添加节点。@nithcaudhari:其他地方一定有错误。你订阅了treeview的一些活动吗?我已经测试了上面的代码,它是有效的!我有BeforeExpand和AfterLabelEdit,但它在Labeledit后不会中断,你能给我发电子邮件给我你的工作样本吗?@NitinChaudhari:我在回答中更改了样本代码。我有一个表单,上面有一个树状视图和一个按钮。我认为您必须在BeforeExpand代码中搜索问题。发布它,我看一看。你是对的,在Expand清除所有节点之前,现在如果我没有任何子目录,我不会清除它。现在开始工作了。谢谢:)