我在主窗体中添加了一个树视图,右键单击打开一个上下文菜单,您可以在其中向树中添加新节点(在本例中为类别)。
创建,然后添加节点并调用BeginEdit()...
private void addCategoryToolStripMenuItem_Click(object sender, System.EventArgs e)
{
var category = new TreeNode();
tvCategories.Nodes.Add(category);
category.BeginEdit();
}
...然后这个:
根据我收集的信息,这应该可以正常工作,无论如何:
只是一种扩展:问题不在于BeginEdit(),我根本无法编辑标签。我仍然不知道为什么,但现在我知道我需要去别的地方看看。
答案 0 :(得分:1)
您的初始节点不能为空,请填写某些类型的文字:
var category = new TreeNode("abc");
答案 1 :(得分:0)
虽然我还不完全确定原因,但即使LabelEdit属性为true,上面的代码也创建了一个无法编辑的节点。
然而,这似乎可以解决问题: private void addCategoryToolStripMenuItem_Click(object sender, System.EventArgs e)
{
tvCategories.Nodes.Add(new TreeNode("category"));
tvCategories.Nodes[tvCategories.Nodes.Count - 1].BeginEdit();
}
第一行创建并添加新节点,这里重要的是你提供一个初始字符串,即使用户必须更改它。为什么?不确定。但是将字符串部分留空会导致上述问题。
第二行只选择最后一个节点。