コード例 #1
0
        private void GetCategoriesButton_Click(object sender, EventArgs e)
        {
            var oldCursor = Cursor;

            try
            {
                Cursor = Cursors.WaitCursor;

                //get categories
                GuiToUtil(generic);

                TreeNode selected = treeView1.SelectedNode;
                if (selected != null && selected.Tag is NextPageCategory && selected.Parent.Parent == null)
                {
                    generic.Settings.Categories.RemoveAt(generic.Settings.Categories.Count - 1);
                    generic.DiscoverNextPageCategories((NextPageCategory)selected.Tag);
                }
                else
                {
                    generic.Settings.Categories.Clear();
                    foreach (Category cat in staticList)
                    {
                        generic.Settings.Categories.Add(cat);
                    }

                    if (GetRegex(generic, "regEx_dynamicCategories") != null)
                    {
                        generic.DiscoverDynamicCategories();
                    }
                }
                treeView1.Nodes.Clear();
                TreeNode root = treeView1.Nodes.Add("site");
                foreach (Category cat in generic.Settings.Categories)
                {
                    root.Nodes.Add(cat.Name).Tag = cat;
                    cat.HasSubCategories         = true;
                }
                root.Expand();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error getting Categories", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                Cursor = oldCursor;
            }
        }