2011-11-22 111 views
2

我的問題是關於向選定節點添加新節點。例如,我有我的樹視圖節點,當我選擇1個節點並單擊按鈕(addCategory)時,我必須將節點添加到同一級別。如果我選擇了1個節點並單擊按鈕(addSubCategory),我必須將節點添加到子級別。添加相對於TreeView選定節點的新節點

回答

3

其實如果你在Windows窗體或網頁形式我想,但你問什麼僞代碼它可以改變一個位是這樣的:

AddCategory

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

AddSubCategory

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

當然在執行此操作前檢查SelectedNode和Parent爲null ;-)

1

如果單擊一個節點並單擊addCategory按鈕,則可以取該節點的父節點。然後向父節點添加一個節點。如果父項爲空(選擇根項目),只需將一個項目添加到TreeView。如果單擊addSubCategory按鈕,則將節點添加到所選節點。

編輯:

在下面的代碼 '爲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

你能解釋清楚..treeview1不是Treeview的名稱?如果不是你能expalin怎麼能ı描述..這是我第一次使用treeview? – santa