在C#中将子节点添加到树视图

时间:2013-04-03 19:36:10

标签: c# treeview

我有一个包含Car Makes及其各自模型的树视图。我有一个添加新Make(父节点)的按钮。

private void btnMake_Click(object sender, EventArgs e)
{
    string inputMake;
    inputMake = Microsoft.VisualBasic.Interaction.InputBox("Enter Make: ", "Add Car Manufacturer");
    carMake.Add(inputMake); // arrayList to store car Makes
    carTree.Nodes.Add(new TreeNode(inputMake));
}

我遇到的问题是添加模型(子节点)。我有一个添加模型的按钮,我不知道如何区分合适的父节点。

我目前有以下代码:

private void btnModel_Click(object sender, EventArgs e)
{
    string inputModel;
    int index = carTree.Nodes.IndexOf(carTree.SelectedNode);
    //MessageBox.Show(carMake[index].ToString());
    //inputModel = Microsoft.VisualBasic.Interaction.InputBox("asfdasdf", "asdfasdf");
    //carTree.Nodes[index].Nodes.Add(new TreeNode(inputModel));
}

由于测试,最后一行被注释掉了。 。 。我将护理Makes(父节点)放入ArrayList但是在访问arraylist时遇到问题。该行返回错误:

 //MessageBox.Show(carMake[index].ToString());

最终,我希望能够以最有效的方式将子节点添加到相应的父节点。

1 个答案:

答案 0 :(得分:2)

试试这个:

if(carTree.SelectedNode == null)
  MessageBox.Show("Please select a node first");    

carTree.SelectedNode.Nodes.Add(new TreeNode("Child"));