예제 #1
0
        private void treeView1_DragDrop(object sender, DragEventArgs e)
        {
            if (!CheckFilter())
            {
                return;
            }
            Point      pt;
            TreeNodeEx targeNode;

            pt        = ((TreeView)(sender)).PointToClient(new Point(e.X, e.Y));
            targeNode = (TreeNodeEx)this.treeView1.GetNodeAt(pt);
            if (targeNode == null)
            {
                return;
            }
            TreeNodeEx moveNode = (TreeNodeEx)e.Data.GetData("TreeNodeEx");

            if (moveNode == targeNode)
            {
                return;
            }
            TreeNode pNode = targeNode.Parent;

            if (pNode == null)
            {
                return;
            }
            if (pNode != moveNode.Parent)
            {
                return;
            }
            moveNode.Remove();
            pNode.Nodes.Insert(targeNode.Index, moveNode);
            List <string> ids = new List <string>();

            for (int i = 0; i < pNode.Nodes.Count; i++)
            {
                ids.Add(pNode.Nodes[i].Name);
            }
            ////移除拖放的节点
            //ERM.CBLL.CellTreesData.UpdateSeriersFileOrderIndex(ids, Globals.ProjectNO);
            treeView1.SelectedNode = moveNode;
        }
예제 #2
0
        /// <summary>
        /// 删除当前节点
        /// </summary>
        private void DelNode()
        {
            frm2PDFProgressMsg dfmsg = null;

            try
            {
                TreeNodeEx theNode = (TreeNodeEx)treeView1.SelectedNode;
                if (theNode == null)
                {
                    return;
                }
                TreeNodeEx parentNode = (TreeNodeEx)theNode.Parent;
                if (parentNode == null)
                {
                    return;
                }
                if (parentNode.Tag != null && parentNode.Tag.ToString() == "")
                {
                    MyFavorites myFav1 = new MyFavorites();
                    myFav1.Delete(theNode.Name);
                    theNode.Remove();
                    return;
                }

                int DelCount = 0;
                if (theNode.ImageIndex == 1)
                {
                    bool check_flg = false;
                    CheckFileNodeIsArch(theNode, ref check_flg, ref DelCount);
                    if (check_flg)
                    {
                        TXMessageBoxExtensions.Info("提示:已经组卷的文件目录不允许修改!");
                        return;
                    }
                }
                DialogResult ret = TXMessageBoxExtensions.Question("确定删除 [" + GetTrueText(theNode.Text) + "] 及其子节点?");
                if (ret == DialogResult.OK)
                {
                    this.Enabled = false;

                    MDL.T_FileList fileMDL = (new BLL.T_FileList_BLL()).Find(theNode.Name, Globals.ProjectNO);
                    if (fileMDL != null)
                    {
                        if (int.Parse(fileMDL.fileStatus) > 3)
                        {
                            TXMessageBoxExtensions.Info("该文件已经 登记或组卷,无法进行删除操作!");
                            this.Enabled = true;
                            return;
                        }
                        dfmsg = new frm2PDFProgressMsg();
                        if (theNode.ImageIndex == 1)
                        {
                            dfmsg.progressBar1.Maximum = DelCount;
                            dfmsg.label2.Text          = "正在删除:0/" + DelCount.ToString();
                            dfmsg.Show();
                            Application.DoEvents();
                        }
                        else
                        {
                            dfmsg.progressBar1.Maximum = 2;
                            dfmsg.progressBar1.Value   = 1;
                            dfmsg.label2.Text          = "正在删除:1/1";
                            dfmsg.Show();
                            Application.DoEvents();
                        }

                        DeleteRecycle(theNode.Name, ref dfmsg);
                        theNode.Remove();
                        CheckEnable();
                        tssLabel1.Text = Globals.NormalStatus;
                    }
                    this.Enabled = true;
                }
            }
            catch (Exception ex)
            {
                this.Enabled = true;
                if (dfmsg != null)
                {
                    dfmsg.Dispose();
                    dfmsg.Close();
                }
            }
            finally
            {
                this.Enabled = true;
                if (dfmsg != null)
                {
                    dfmsg.Dispose();
                    dfmsg.Close();
                }
            }
        }