private void mnu_addFolder(object sender, EventArgs e)
        {
            TreeViewWix tv = this.TreeView as TreeViewWix;
            Form        f  = null;

            if (this.TreeView != null)
            {
                f = this.TreeView.FindForm();
            }
            DlgFolderName dlg = new DlgFolderName();

            dlg.LoadData(Folder.Folders);
            if (dlg.ShowDialog(f) == DialogResult.OK)
            {
                this.Expand();
                WixFolderNode     fo = Folder.AddFolder(dlg.NewName);
                TreeNodeWixFolder tn = new TreeNodeWixFolder(fo);
                tn.SelectFile += new EventHandler(tn_SelectFile);
                Nodes.Add(tn);
                if (this.TreeView != null)
                {
                    this.TreeView.SelectedNode = tn;
                }
                if (tv != null)
                {
                    tv.OnPropertyValueChanged();
                    UserControlSetupProperties ucp = getHolder();
                    if (ucp != null)
                    {
                        ucp.OnSelectTreeNode(tn);
                    }
                }
            }
        }
        public virtual void OnLoadNextLevel(NodeLoader loader)
        {
            _nextLevelLoaded = true;
            WixFolderNode         f  = Folder;
            IList <WixFolderNode> fs = f.Folders;

            if (fs != null && fs.Count > 0)
            {
                foreach (WixFolderNode fl in fs)
                {
                    TreeNodeWixFolder tn = new TreeNodeWixFolder(fl);
                    tn.SelectFile += new EventHandler(tn_SelectFile);
                    Nodes.Add(tn);
                }
            }
        }
 void checkedListBox1_MouseDown(object sender, MouseEventArgs e)
 {
     if (!treeView1.ReadOnly)
     {
         if (e.Button == MouseButtons.Right)
         {
             MenuItem          mi;
             ContextMenu       cm  = new ContextMenu();
             TreeNodeWixFolder tnf = treeView1.SelectedNode as TreeNodeWixFolder;
             if (tnf != null)
             {
                 mi = new MenuItem("Add files", tnf.mnu_addFiles);
                 cm.MenuItems.Add(mi);
             }
             mi = new MenuItem("Remove unchecked files", tnf.mnu_removeUncheckedFiles);
             cm.MenuItems.Add(mi);
             cm.Show(checkedListBox1, new Point(e.X, e.Y));
         }
     }
 }