2011-07-12 17 views
3

TreeView.TreeNodeExpandedのイベントでTreeNode.ChildNodesを設定する必要があります。問題は、イベントが発生する前にノードが空であり、この場合は展開できず、展開アイコンがありません[+]が隣に表示されています。ASP.NET:拡張可能な空のTreeNodeを作成する方法

ノードに子を追加せずに、その関連オブジェクトに子がある場合に備えて、ノードを拡張可能にしたいと考えています。

ノードに仮想子を追加して展開したときに削除することを考えました。より良いオプションはありますか?

ありがとうございます。

答えて

3

3つのステップ:

1からTreeView.ExpandDepth に設定してください。これはTreeViewで添加TreeNodeオブジェクトの拡大を排除し、からTreeNode.PopulateOnDemandプロパティセットを有する各TreeNode隣膨張シンボル[+]を示しています。

2 - 設定TreeNode.PopulateOnDemandそれぞれのへの分岐TreeNodeTreeNode.ChildNodesコレクションがである場合、拡張記号[+]はのみ次からTreeNode.PopulateOnDemandプロパティセットを有するTreeNodeオブジェクトに示されます。

3展開時にブランチノードをポーラー処理するために、TreeView.TreeNodePopulateイベントを処理します。このイベントはTreeNode - TreeNode.PopulateOnDemandの場合、 - TreeView.TreeNodeExpandedイベントが発生する直前に展開されました。

0

よく分かりませんし、試してみる時間がありませんが、あなたの後ろにはTreeNode.PopulateOnDemandのプロパティとTreeView.TreeNodePopulateというイベントがあります。トリックを行うには

+0

私はその部分を知っています。いくつかのアイテムがある場合、項目にデータを取り込む前に 'TreeNode'を展開可能にする必要があります。 –

関連する問題