Beispiel #1
0
        /// <summary>
        /// 创建选择的数据
        /// </summary>
        private void DeleteSelectedData(object state)
        {
            bool   bIfSucc      = false;
            string strErrMessag = "未知错误";

            SetButtonEnabled(false);
            try
            {
                if (this._FormIfClose)
                {
                    return;
                }
                Model.SelecedTreeNodeData objSelecedTreeNodeData = (Model.SelecedTreeNodeData)state;
                if (!(objSelecedTreeNodeData.SelectedDataList == null || objSelecedTreeNodeData.SelectedDataList.Count == 0))
                {
                    IDAL.IBuilding objDalBuilding = DALFactory.DALFactory.Building();
                    IDAL.ISys      objDalSys      = DALFactory.DALFactory.Sys();
                    foreach (Model.NodeData objData in objSelecedTreeNodeData.SelectedDataList)
                    {
                        if (objData.Flag.Equals(-1))
                        {
                            //全部
                            bIfSucc = objDalSys.DeleteData(0);
                        }
                        else if (objData.Flag >= 0 && objData.Flag <= 3)
                        {
                            bool bSucc = objDalBuilding.Delete(objData.ID);
                            if (bSucc)
                            {
                                bIfSucc = bSucc;
                            }
                        }
                    }
                }
                if (bIfSucc)
                {
                    InitTree();
                }
            }
            catch (Exception err)
            {
                strErrMessag = err.Message;
            }
            if (bIfSucc)
            {
                RefreshTreeByThread();
            }
            SetButtonEnabled(true);
            if (bIfSucc)
            {
                CMessageBox.ShowSucc("恭喜您,删除成功!", Config.DialogTitle);
                //当建筑信息删除时,通知其他已开启的树
                Manager.GetInstance().BuildingDataChangeNotice();
            }
            else
            {
                CMessageBox.ShowError(string.Format("对不起,删除失败,错误原因:\r\n{0}", strErrMessag), Config.DialogTitle);
            }
        }
Beispiel #2
0
        protected override void BtnOK_Click(object sender, EventArgs e)
        {
            List <Model.NodeData> listSelectedData = new List <Model.NodeData>();

            GetSelectedNodes(ref listSelectedData, this.tv.Nodes[0]);
            if (listSelectedData.Count > 0)
            {
                if (MessageBox.Show("删除后,数据将无法恢复,您确定要删除您勾选的那些数据吗?", Config.DialogTitle, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                {
                    return;
                }
                Model.SelecedTreeNodeData objSelecedTreeNodeData = new Model.SelecedTreeNodeData()
                {
                    SelectedDataList = listSelectedData
                };
                SetButtonEnabled(false);
                ThreadPool.QueueUserWorkItem(new WaitCallback(DeleteSelectedData), objSelecedTreeNodeData);
            }
            else
            {
                CMessageBox.ShowWaring("请勾选您要删除的数据!", Config.DialogTitle);
            }
        }