2013-04-03 38 views
1

我有一个树视图,其中包含汽车制造商及其各自的型号。我有一个添加一个新的Make(父节点)的按钮。将子节点添加到C#中的treeview中#

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)); 
} 

最后几行被注释掉了因测试。 。 。我把关心使(父节点)进入ArrayList,但我有问题访问arraylist。此行会返回一个错误:

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

最后,我想一些帮助,最有效的方式,以子节点添加到相应的父节点。

+0

它是如何工作的?它会将子节点添加到当前突出显示的节点吗?父节点在哪里以及如何选择? – phadaphunk 2013-04-03 19:43:25

+0

它是一个Windows窗体应用程序。所以通过选择然后单击添加子按钮来选择父节点。如果没有选择父节点,我还必须找出异常消息。 – user2101459 2013-04-03 19:50:25

回答

1

试试这个:

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

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

感谢您的帮助 – user2101459 2013-04-03 19:58:28

+0

没问题。如果您的问题已解决,请不要忘记将此问题标记为已回答。 – phadaphunk 2013-04-03 19:59:18

相关问题