2011-11-22 4 views
2

Мой вопрос заключается в добавлении нового узла в выбранный узел. Например, у меня есть свои узлы treeview, и когда я выбрал 1 узел и кнопку щелчка (addCategory), я должен добавить узел на тот же уровень. Если я выбрал 1 узел и нажмите кнопку (addSubCategory), я должен добавить узел на дополнительный уровень.Добавление новых узлов относительно выбранного узла TreeView

ответ

3

на самом деле это может немного измениться, если вы находитесь в окне формы или веб-форме, которые я предполагаю, но псевдокод за то, что вы спросите это:

AddCategory

treeView1.SelectedNode.Parent.Nodes.Add("my new category"); 

AddSubCategory

treeView1.SelectedNode.Nodes.Add("my new sub category"); 

, конечно, проверьте SelectedNode и Parent на null, прежде чем делать это ;-)

1

Если вы нажмете узел и нажмите кнопку addCategory, вы можете взять родительский элемент этого узла. Затем добавьте узел в родительский. Если родительский объект равен null (выбранный корневой элемент), просто добавьте элемент в TreeView. Если нажать кнопку addSubCategory, вы добавите узел в выбранный узел.

Edit:

В следующий код 'treeView1' это имя-свойство TreeView. В вашем коде это может быть что-то другое, поэтому измените соответствующим образом. То же самое касается «textBox1»:

protected void categoryButton_Click1(object sender, EventArgs e) 
{ 
    if (treeView1.SelectedNode != null) 
    { 
     var nodeText = textBox1.Text.Trim(); 
     if (treeView1.SelectedNode.Parent == null) 
      treeView1.Nodes.Add(new TreeNode(nodeText)); 
     else 
      treeView1.SelectedNode.Parent.ChildNodes.Add(new TreeNode(nodeText)); 
    } 
} 

protected void subCategoryButton_Click(object sender, EventArgs e) 
{ 
    var nodeText = textBox1.Text.Trim(); 
    if (treeView1.SelectedNode != null) 
     treeView1.SelectedNode.ChildNodes.Add(new TreeNode(nodeText)); 
} 

Надеюсь, это поможет! :)

+0

защищен недействительным BtnAdd_Click (объект отправителя, EventArgs е) { если (TreeView1.SelectedNode! = NULL) если (RadioButton1.Checked == TRUE) { строка ParentNode; ParentNode = TextBox1.Text.Trim(); TreeView1.Nodes.Add (ParentNode); } } ı этот код .Но в программе «treeView1» и «ParentNode» подчеркнуты: S для того, что я не понимаю – santa

+0

Проверьте мой отредактированный ответ. :) – Abbas

+0

Можете ли вы объяснить clearer..treeview1 это не имя Treeview ?? если нет. Можете ли вы объяснить, как это может описать. Впервые я использую treeview? – santa

Смежные вопросы