私は、コントロールtreeViewMainを持つウィンドウフォームを持っています。コードには、treeViewsの可変数を持つtreeViewsのリストがあります。私はtreeViewMainがリストからツリービューの誰かを表示するようにします。他のツリービューからTreeViewを参照する
treeViewMain=treeViews[0];
しかし、フォームはツリーを表示していません。また、私は徹底的にリストのtreeViewsをチェックし、正しく配置されています。
私は、コントロールtreeViewMainを持つウィンドウフォームを持っています。コードには、treeViewsの可変数を持つtreeViewsのリストがあります。私はtreeViewMainがリストからツリービューの誰かを表示するようにします。他のツリービューからTreeViewを参照する
treeViewMain=treeViews[0];
しかし、フォームはツリーを表示していません。また、私は徹底的にリストのtreeViewsをチェックし、正しく配置されています。
明らかに単純な割り当ては機能しません。 this postによれば、TreeViewNode
の親は一意でなければならず、そこでは「果物」は1つのツリーにしか座ることができないようです。
つの回避策はtreeViewMain
にあなたのリストにTreeView
の親プロパティを設定することができます。
treeViews[0].Parent = treeViewMain;
これはtreeViewMain
内部の子としてリストからツリービューを配置します。
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++;
}
他の可能性:あなたはそれを変更して、この例のように新しい親を割り当てる前に、以前にロードされたアイテムの親プロパティがnullに設定されていることを確認する必要があり、あなたのリストから次の項目をロードする場合リストアイテムをディスプレイに更新するたびに、各ノードをクローンしてtreeViewMain
を入力することです。
問題を解決できましたか? –
ええ私はtreeViewMainのすべての子をクリアし、treeViews [0]の子をtreeViewMain @MongZhuに追加することで問題を解決しました –