2017-08-16 52 views
1

我有一個窗口窗體,它具有一個控件treeViewMain,並且在代碼中我有一個treeViews列表,它具有可變數目的treeViews。我希望treeViewMain從列表中顯示任何treeView。從其他TreeView引用TreeView

treeViewMain=treeViews[0]; 

但窗體沒有顯示樹。此外,我已經徹底檢查列表中的樹視圖,它們正確填充。

+0

你能解決你的問題嗎? –

+0

是的我通過清除treeViewMain的所有孩子,然後將treeViews [0]的孩子添加到treeViewMain @MongZhu來解決問題 –

回答

0

顯然簡單的分配不起作用。根據this postTreeViewNode的父母似乎必須是唯一的,而「水果」只能坐在一棵樹上。

一個解決辦法可能是在TreeView的parent屬性在列表中設置爲treeViewMain

treeViews[0].Parent = treeViewMain; 

這將使從樹狀列表作爲一個孩子裏面treeViewMain。如果你想改變這一點,從您的列表加載下一個項目,你需要確保的是,以前加載項的parent屬性設置爲null在這個例子中分配一個新的父母像以前一樣:

private int count = 0; 

private void button_ChooseTreeView_Click(object sender, EventArgs e) 
{ 
    if (count > 0) 
    { 
     treeViews[count -1].Parent = null; 
    } 
    treeViews[count].Parent = treeViewMain; 
    count++; 
} 

另一種可能將克隆每個節點,並填充treeViewMain每次你想更新列表項到顯示器