当我想添加父节点时,我添加的第一个工作, Parent Node 1 但是当我想添加另一个具有相同功能的父级时,会发生这种情况: Parent Node 2
Heres My Code:
public void add() {
TreeView t = new TreeView();
t = treeView1;
names.Add(textBox1.Text);
passwords.Add(textBox2.Text);
emails.Add(textBox3.Text);
websites.Add(textBox4.Text);
string addedname = textBox1.Text;
string addedpass = textBox2.Text;
string addedemail = textBox3.Text;
string addedwebsite = textBox4.Text;
string nodename = textBox5.Text;
int treecount = 0;
removewhat = nodename;
t.Nodes.Add(nodename);
t.Nodes[treecount].Nodes.Add($"Username: {addedname?? "Empty"}");
t.Nodes[treecount].Nodes.Add($"Password: {addedpass?? "Empty"}");
t.Nodes[treecount].Nodes.Add($"Email: {addedemail?? "Empty"}");
t.Nodes[treecount].Nodes.Add($"Website: {addedwebsite ?? "Empty"}");
treecount += 1;
removewhat = null;
nodename = null;
addedname = null;
addedpass = null;
addedemail = null;
addedwebsite = null;
textBox3.Clear();
textBox4.Clear();
textBox1.Clear();
textBox2.Clear();
textBox5.Clear();
}
答案 0 :(得分:0)
它们全部出现在顶层节点中的原因是您使用值为0的treecount来索引节点。因此,t.Nodes [treecount]将始终是列表中的第一个节点,而不是新创建的节点。
我认为更简单,更清晰的方法是添加整个节点:
TreeNode newNode = new TreeNode(nodename);
newNode.Nodes.Add($"Username: {addedname ?? "Empty"}");
newNode.Nodes.Add($"Password: {addedpass ?? "Empty"}");
newNode.Nodes.Add($"Email: {addedemail ?? "Empty"}");
newNode.Nodes.Add($"Website: {addedwebsite ?? "Empty"}");
treeView1.Nodes.Add(newNode);
这样你根本不需要关心索引。
答案 1 :(得分:0)
设置整数以在刷新
后将子项添加回零在void
之外添加整数