using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; using Core.Mes.Client.Comm.Control; using com.steering.mes.mcp.entity; using Infragistics.Win.UltraWinGrid; using Core.Mes.Client.Comm.Tool; namespace Core.StlMes.Client.Mcp.Control { public partial class CoupThreadingControl : UserControl { private Infragistics.Win.UltraWinGrid.UltraGrid _grid = null; /// /// Grid编辑区 /// public Infragistics.Win.UltraWinGrid.UltraGrid Grid { get { return _grid; } } public CoupThreadingControl() { InitializeComponent(); GridHelper.InitCardGrid(this.ultraDataSource1, this.ultraGrid1); _grid = this.ultraGrid1; } /// /// 接箍车丝实绩实体对象 /// private ThreadingResult _result = new ThreadingResult(); public ThreadingResult Value { get { return _result; } set { if (value != null) { _result = value; UpdateData(); } } } /// /// 更新数据 /// public void UpdateData() { if (_result != null) { ultraDataSource1.Rows[0]["Machine_No"] = _result.MachineNo; ultraDataSource1.Rows[0]["Threading_Pieces"] = _result.ProducedPcs; ultraDataSource1.Rows[0]["Qualified_Pieces"] = _result.QualiriedPcs; ultraDataSource1.Rows[0]["Rejected_Pieces"] = _result.RejectedPieces; ultraDataSource1.Rows[0]["Rjected_Reason"] = _result.RejectedReason; ultraDataSource1.Rows[0]["Producer"] = _result.Producer; ultraDataSource1.Rows[0]["Produce_Time"] = _result.ProducerTime; ultraDataSource1.Rows[0]["Threading_Shift"] = _result.ColShft; ultraDataSource1.Rows[0]["Threading_Group"] = _result.ColGroup; ultraDataSource1.Rows[0]["Threading_Operator"] = _result.ColUser; ultraDataSource1.Rows[0]["Threading_Time"] = _result.ColTime; } else { GridHelper.InitCardGrid(ultraDataSource1, ultraGrid1); } ultraGrid1.UpdateData(); } /// /// 控件编辑后更新已修改数据 /// public new void Update() { ultraGrid1.UpdateData(); } /// /// 控件编辑后更新已修改数据 /// /// /// private void ultraGrid1_AfterCellUpdate(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e) { try { switch (e.Cell.Column.Key) { case "Machine_No": Value.MachineNo = e.Cell.Value.ToString(); break; case "Threading_Pieces": Value.ProducedPcs = e.Cell.Value.ToString(); break; case "Qualified_Pieces": Value.QualiriedPcs = e.Cell.Value.ToString(); break; case "Rejected_Pieces": Value.RejectedPieces = e.Cell.Value.ToString(); break; case "Rjected_Reason": Value.RejectedReason = e.Cell.Value.ToString(); break; case "Produce_Time": Value.ProducerTime = e.Cell.Value.ToString(); break; case "Producer": Value.Producer = e.Cell.Value.ToString(); break; case "Threading_Shift": Value.ColShft = e.Cell.Value.ToString(); break; case "Threading_Group": Value.ColGroup = e.Cell.Value.ToString(); break; case "Threading_Operator": Value.ColUser = e.Cell.Value.ToString(); break; case "Threading_Time": Value.ColTime = e.Cell.Value.ToString(); break; } } catch { } } /// /// 设置grid中一部分的编辑模式 /// /// 要设置的部分 /// public void SetGridActivation(Object[] pamars, Activation activation) { if (pamars != null) { foreach (string column in pamars) { // this.ultraGrid1.DisplayLayout.Override.CellAppearance this.ultraGrid1.DisplayLayout.Bands[0].Columns[column].CellActivation = activation; // Infragistics.Win.UltraWinGrid.CellEventArgs e = new CellEventArgs(this.ultraGrid1.Selected.Cells); //e.Cell.Column.CellActivation.ToString() = activation; if (activation == Activation.AllowEdit) { this.ultraGrid1.DisplayLayout.Bands[0].Columns[column].CellAppearance.BackColor = Color.White; if (column == "Produce_Time") { this.ultraGrid1.DisplayLayout.Bands[0].Columns[column].EditorComponent = this.ultraDateTimeEditor1; } } else { this.ultraGrid1.DisplayLayout.Bands[0].Columns[column].CellAppearance.BackColor = Color.Gray; if (column == "Produce_Time") { this.ultraGrid1.DisplayLayout.Bands[0].Columns[column].EditorComponent = null; } } } } } /// /// 验证格试 /// public bool ValidInput1() { bool p = true; if (!StringUtil.IsInt(ultraDataSource1.Rows[0]["Threading_Pieces"].ToString())) { MessageBox.Show("加工支数 请输入整数", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); p = false; } if (!StringUtil.IsInt(ultraDataSource1.Rows[0]["Qualified_Pieces"].ToString())) { MessageBox.Show("合格支数 请输入整数", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); p = false; } if (!StringUtil.IsInt(ultraDataSource1.Rows[0]["Rejected_Pieces"].ToString())) { MessageBox.Show("废品数 请输入整数", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); p = false; } return p; } } }