【发布时间】:2011-08-20 00:27:53
【问题描述】:
我有一个名为 treeView1 的带有 TreeView 的简单表单,我喜欢在 HandleCreated 处理程序中添加一些节点,如下所示:
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
treeView1.CheckBoxes = true;
treeView1.HandleCreated += delegate
{
// Add one and only one node
treeView1.Nodes.Add(new TreeNode("A Node"));
};
}
}
}
当运行这个表单时,实际上有两个节点可见!当我单击第二个节点上的复选框时,第一个节点被选中/取消选中。
有人知道防止这个“幽灵节点”的方法吗?
我想在HandleCreated 中添加节点的原因是,这个处理程序用于一个线程函数,它实际上为要添加的节点构造了一个数据结构。稍后添加节点意味着我必须重新编写很多代码。
【问题讨论】:
标签: c# winforms treeview .net-3.5