TreeViewのBeforeExpandイベントについて
- 題名: TreeViewのBeforeExpandイベントについて
- 著者: まとぱぱ
- 日時: 2011/04/05 12:02:15
- ID: 28395
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: TreeViewのBeforeExpandイベントについて
- 著者: shu
- 日時: 2011/04/05 12:15:16
- ID: 28396
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: TreeViewのBeforeExpandイベントについて
- 著者: まとぱぱ
- 日時: 2011/04/05 13:59:20
- ID: 28397
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
TreeViewを使用してエクスプローラーのようにディレクトリの一覧を表示しています。
その際、親となるフォームの表示/非表示を切り替えると
表示時にBeforeExpandイベントが発生して、ツリー階層の生成処理が走ってしまいます。
どうにかして、フォームShow時のBeforeExpandイベントを判断したいのですが
良い案は無いでしょうか?
【コード】
private void Explorer_BeforeExpand(object sender, System.Windows.Forms.TreeViewCancelEventArgs e)
{
TreeViewExpand(e.Node);
}
private void TreeViewExpand(System.Windows.Forms.TreeNode node)
{
System.IO.DirectoryInfo directory;
System.Windows.Forms.TreeNode nd;
string path;
node.Nodes.Clear();
path = node.FullPath;
if (System.IO.Directory.Exists(path))
{
directory = new System.IO.DirectoryInfo(path);
foreach (System.IO.DirectoryInfo di in directory.GetDirectories())
{
nd = node.Nodes.Add(di.Name);
if (di.GetDirectories().Length > 0)
{
nd.Nodes.Add("dummy");
}
}
}
}