lu
2025-06-11 93bd757f4801719b769e78f4dee00847c228a55d
DevApp/Gs.DevApp/DevFrm/QC/Frm_MesQaItemsDetect01Input.cs
@@ -13,7 +13,7 @@
        string _webServiceName = "MesQaItemsDetect01Manager/";
        private string dt01Guid = "";
        bool isEdit = false;
        string strBhg = "×";
        /// <summary>
        /// 
        /// </summary>
@@ -25,10 +25,13 @@
            this.dt01Guid = _dt01Guid;
            this.isEdit = _blEdit;
            Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameterMx(gvMx1);
            getModel();
            //编辑事件
            gvMx1.CellValueChanged += GvMx1_CellValueChanged;
            gvMx1.ShowingEditor += GvMx1_ShowingEditor;
            //取消不符合条件的编辑
            //  gvMx1.ShowingEditor += GvMx1_ShowingEditor;
            //禁用样本数之外的单元格且改变颜色
            gvMx1.CustomDrawCell += GvMx1_CustomDrawCell;
            getModel();
        }
        /// <summary>
@@ -44,6 +47,10 @@
                return false;
            if (_FieldName == "样本数")
                return true;
            if (_FieldName.Contains("jg"))
                return false;
            if (string.IsNullOrEmpty(_maxYbs))
                return false;
            string _seqYb = _FieldName.Replace("样本", "");
@@ -52,8 +59,14 @@
            return true;
        }
        /// <summary>
        /// 禁用样本数之外的单元格
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void GvMx1_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e)
        {
            // 获取单元格的值
            string _maxYbs = (gvMx1.GetRowCellValue(e.RowHandle, "样本数").ToString());
            bool _bl = ckCol(e.Column.FieldName, _maxYbs);
            if (_bl)
@@ -65,12 +78,22 @@
            {
                e.Appearance.BackColor = Color.LightGray;
            }
            e.Column.OptionsColumn.ReadOnly = !isEdit;
            if (e.Column.Name.Contains("样本") && e.Column.Name != "样本数")
            {
                object value = gvMx1.GetRowCellValue(e.RowHandle, e.Column + "jg");
                if (value != null && value.ToString() == strBhg)
                {
                    e.Appearance.ForeColor = Color.White;
                    e.Appearance.BackColor = Color.Red;
                };
            }
        }
        private void GvMx1_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
        {
            if (e.Column.FieldName.Contains("jg"))
                return;
            try
            {
                // 获取行句柄
@@ -110,11 +133,15 @@
                        Gs.DevApp.ToolBox.MsgHelper.ShowError(_outMsg);
                        gvMx1.SetRowCellValue(rowHandle, dtCol, "");
                    }
                    else
                    {
                        //如果不合格,存进去
                        string _outFstand = _rtn.rtnData.outFstand;
                        gvMx1.SetRowCellValue(rowHandle, dtCol + "jg", _outFstand);
                    }
                    //如果是样本数,要重新刷新
                    if (_strYbNo == "样本数")
                        getModel();
                    //lbGuid.Text = _rtn.rtnData.outGuid;
                    //txt_hNo.Text = _rtn.rtnData.outNo;
                    //toolBarMenu1.isSetBtn = true;
                }
                else
                    ToolBox.MsgHelper.Warning("提示:" + _rtn.rtnMsg);
@@ -132,7 +159,6 @@
            bool _bl = ckCol(view.FocusedColumn.FieldName, _maxYbs);
            if (!_bl)
                e.Cancel = true;
        }
        private void getModel()
@@ -156,6 +182,14 @@
                        gcMx1.DataSource = dt;
                        gcMx1.ForceInitialize();
                        gvMx1.BestFitColumns();
                        // 隐藏不必要的列,同时把不合格的存进去
                        foreach (DataColumn col in dt.Columns)
                        {
                            if (col.ColumnName.Contains("jg"))
                            {
                                gvMx1.Columns[col.ColumnName].Visible = false;
                            }
                        }
                        gvMx1.Columns["guid"].Visible = false;
                        gvMx1.Columns["parentGuid"].Visible = false;
                    }