Beispiel #1
0
        /// <summary>
        /// 删除选择
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void BtnDeleteSel_Click(object sender, EventArgs e)
        {
            if (!CStaticClass.CheckPushService())
            {// 检查服务
                return;
            }

            QueryServiceClient proxy = new QueryServiceClient();

            try
            {
                // 判断是否选择当前操作员
                foreach (DataGridViewRow dgvr in this.DgvOperator.SelectedRows)
                {
                    if (((COperatorDto)dgvr.DataBoundItem).optcode == CStaticClass.myOperator.optcode)
                    {
                        MessageBox.Show("不允许删除当前操作员的信息!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        return;
                    }
                }

                DialogResult dr = MessageBox.Show("确认删除?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Asterisk);

                if (dr == DialogResult.Cancel)
                {
                    return;
                }
                foreach (DataGridViewRow dgvr in this.DgvOperator.SelectedRows)
                {
                    COperatorDto operatorDto = (COperatorDto)dgvr.DataBoundItem;
                    bool         flag        = proxy.DeleteOperator(operatorDto);

                    if (flag)
                    {
                        this.CupttsOpt.DeleteDataList(operatorDto);
                        //((BindingList<COperatorDto>)this.DgvOperator.DataSource).Remove(operatorDto);
                    }
                    //else
                    //{
                    //    MessageBox.Show("没有该操作员", "删除失败", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    //}
                }
                MessageBox.Show("删除成功", "成功", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                this.CupttsOpt.UpdatePages();
            }
            catch (TimeoutException)
            {
                MessageBox.Show("The service operation timed out. ", "超时", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (FaultException exception)
            {
                MessageBox.Show(CStaticClass.GetExceptionInfo(exception), "SOAP错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (CommunicationException exception)
            {
                MessageBox.Show("There was a communication problem. " + CStaticClass.GetExceptionInfo(exception), "通信错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (Exception exception)
            {
                MessageBox.Show(CStaticClass.GetExceptionInfo(exception), "应用程序异常", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            proxy.Close();
        }
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void BtnDelete_Click(object sender, EventArgs e)
        {
            if (!CStaticClass.CheckPushService())
            {// 检查服务
                return;
            }

            QueryServiceClient proxy = new QueryServiceClient();

            try
            {
                if (string.IsNullOrEmpty(this.CTxtCode.Text))
                {
                    MessageBox.Show("用户名不能为空", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }

                if (CStaticClass.myOperator.optcode == this.CTxtCode.Text.Trim())
                {
                    MessageBox.Show("不允许删除当前操作员的信息!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }

                COperatorDto operatorDto = getOperatorInfo();
                bool         flag        = proxy.DeleteOperator(operatorDto);

                if (!flag)
                {
                    MessageBox.Show("删除数据库失败!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }

                // 移除界面操作员列表行数据
                if (null != this.Owner && typeof(CFormOperatorManage) == this.Owner.GetType() &&
                    ((CFormOperatorManage)this.Owner).RemoveDgvOperatorRow(operatorDto))
                {
                    MessageBox.Show("删除成功!", "成功", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                    this.Close();
                }
                else
                {
                    MessageBox.Show("没有该操作员!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            catch (TimeoutException)
            {
                MessageBox.Show("The service operation timed out. ", "超时", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (FaultException exception)
            {
                MessageBox.Show(CStaticClass.GetExceptionInfo(exception), "SOAP错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (CommunicationException exception)
            {
                MessageBox.Show("There was a communication problem. " + CStaticClass.GetExceptionInfo(exception), "通信错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (Exception exception)
            {
                MessageBox.Show(CStaticClass.GetExceptionInfo(exception), "应用程序异常", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            proxy.Close();
        }