public void createGui_EditUsingCategories(Control hostControl, string title1, string title2)
        {
            hostControl.clear();
            var usersGui = hostControl.add_1x1(title1, title2, true, hostControl.width() / 3);

            var pageEditor = usersGui[1].Parent.clear().add_Control <ascx_MediaWiki_PageEditor_Simple>().buildGui(WikiApi);

            var controls                   = usersGui[0].Parent.clear().add_1x1("Category Names", "Pages in Selected Category", false);
            var Categories_TreeView        = controls[0].add_TreeView();
            var PagesInCategories_TreeView = controls[1].add_TreeView();

            MethodInvoker loadData =
                () => {
                //Categories_TreeView.clear();
                Categories_TreeView = controls[0].add_TreeViewWithFilter(WikiApi.categoryPages())
                                      .afterSelect <string>(
                    (value) => {
                    PagesInCategories_TreeView = controls[1].add_TreeViewWithFilter(WikiApi.pagesInCategory(value))
                                                 .afterSelect <string>((page) => pageEditor.openPage(page));


                    pageEditor.openPage(value);
                    addEditMenuItemsToTreeView(PagesInCategories_TreeView);
                });

                addEditMenuItemsToTreeView(Categories_TreeView);
            };

            //PagesInCategories_TreeView.clear();
            //Categories_TreeView.add_Nodes(WikiApi.categoryPages());

            controls[1].insert_Below <Panel>(20)
            .add_Link("Reload data", 0, 0, () => loadData())
            .click();
        }