作者sdwufei (玉鼎)
看板C_Sharp
標題[問題] TreeView的使用問題?
時間Fri May 3 18:02:48 2013
我現在的TreeView1已經建立如下
1┬1.1─1.1.1
└1.2
2┬2.1
└2.2
假如我今天想要再1.2下在建立個1.2.1與1.2.2變成如下
1┬1.1─1.1.1
└1.2┬1.2.1
└1.2.2
2┬2.1
└2.2
結果我的作法是:
foreach (TreeNode tn1 in treeView1.Nodes)
{
if (tn1.Text == "1")
{
foreach (TreeNode tn2 in tn1.Nodes)
{
if (tn2.Text == "1.2")
{
tn2.nodes.add("1.2.1");
tn2.nodes.add("1.2.2");
}
}
}
}
foreach下會用if判別的因素因為建立的node是使用者自行輸入的。
我總感覺這是個錯誤的作法,萬一今天我的程式需要控制的TreeView到了
更多層的話,比方說到七層好了,我的foreach會用到翻掉吧。
所以我想請問是不是有更好的作法呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.44.193.116
→ Abbee:treeview.nodes[1].nodes[2].add("1.2.1") 05/03 23:17
→ soup514:使用遞迴找出要加的節點 winform有nodes.find可用 05/04 02:23
→ sdwufei:謝謝樓上兩位的提示,兩種方法try一下大概有些底了,謝謝 05/11 15:14