示例#1
0
        private string selPath(string key)
        {
            var src = "";

            folderBrowserDialog1.SelectedPath = INI.ReadINI("上次选择路径", key);
            while (!Directory.Exists(src))
            {
                var result = folderBrowserDialog1.ShowDialog();
                src = folderBrowserDialog1.SelectedPath;
            }
            INI.WriteINI("上次选择路径", key, src);
            return(src);
        }
示例#2
0
        private void 真回调函数(List <TreeNode> curNodes)
        {
            var curNode = curNodes[0];

            INI.WriteINI("盘符上次遍历时间", curNode.Name + "", (DateTime.Now - 开始执行搜索盘符内容的时间).ToString("c"));
            //treeView1.Nodes.Remove(tn);
            //treeView1.Nodes.Add(tn);
            //AddChildNode(treeView1.Nodes[0].Parent, curNode, true);
            SetNodeIdx(curNode, 3);
            curNodes.Remove(curNode);
            if (curNodes.Count == 0)
            {
                timer1.Stop();
                lab2set("");
                //label2.Text = "";//异步操作控件
                return;
            }

            //IAsyncResult: 异步操作接口(interface)
            //BeginInvoke: 委托(delegate)的一个异步方法的开始
            //                                        委托参数,回调函数,回调函数中的result.AsyncState对象
            开始执行搜索盘符内容的时间 = DateTime.Now;
        }
示例#3
0
        private void checkedListBox1_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            if (sender == checkedListBox1 && listBox1.SelectedItem == "分组")
            {
                checkedListBox2.Items.Clear();
                DialogResult dr = MessageBox.Show("是:添加子节点(必须先选择一个节点);否:添加同级节点", "温馨提示",
                                                  MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
                if (dr == DialogResult.Yes)
                {
                    if (checkedListBox1.CheckedItems.Count == 0)
                    {
                        MessageBox.Show("必须选择一个节点!");
                        return;
                    }
                    else if (checkedListBox1.CheckedItems.Count > 1)
                    {
                        dr = MessageBox.Show("添加子节点必须只选择一个节点,点击是则取消所有节点的选择", "温馨提示",
                                             MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
                        if (dr != DialogResult.Yes)
                        {
                            return;
                        }
                        for (var i = checkedListBox1.CheckedItems.Count - 1; i >= 0; i--)
                        {
                            checkedListBox1.SetItemCheckState(
                                checkedListBox1.Items.IndexOf(checkedListBox1.CheckedItems[i]),
                                CheckState.Unchecked);
                        }

                        return;
                    }


                    var curKey = checkedListBox1.CheckedItems[0].ToString();
                    var txt    = "";
                    while (true)
                    {
                        txt = Interaction.InputBox("请输入子节点名,首位字符必须为‘.’", "正在为【" + curKey + "】添加子节点", ".", -1, -1).Trim().ToLower();
                        if (txt == "")
                        {
                            dr = MessageBox.Show("是否取消录入节点", "温馨提示",
                                                 MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
                            if (dr == DialogResult.Yes)
                            {
                                return;
                            }
                        }
                        else if (自定义类别[curKey].Contains(txt))
                        {
                            MessageBox.Show("已有重名节点!");
                        }
                        else
                        {
                            break;
                        }
                    }
                    if (!自定义类别.ContainsKey(curKey))
                    {
                        自定义类别.Add(curKey, new List <string>());
                    }
                    INI.WriteINI(curKey,
                                 curKey +
                                 自定义类别[curKey].Count
                                 , txt);
                    自定义类别[curKey].Add(txt);
                }
                else if (dr == DialogResult.No)
                {
                    var txt = "";
                    while (true)
                    {
                        txt = Interaction.InputBox("请输入同级节点名称,不允许为空", "", "", -1, -1).Trim();
                        if (txt == "")
                        {
                            dr = MessageBox.Show("是否取消录入节点", "温馨提示",
                                                 MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
                            if (dr == DialogResult.Yes)
                            {
                                return;
                            }
                        }
                        else if (分组.Contains(txt))
                        {
                            MessageBox.Show("已有重名节点!");
                        }
                        else
                        {
                            break;
                        }
                    }
                    INI.WriteINI("分组", "分组" + 分组.Count, txt);
                    分组.Add(txt);
                    MessageBox.Show("如需使用新节点,请重新选择左侧!");
                }
                foreach (string curKey in checkedListBox1.CheckedItems)
                {
                    foreach (var s in 自定义类别[curKey])
                    {
                        checkedListBox2.Items.Add(s, true);
                    }
                }
            }
        }