CoupThreadingControl.cs 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Drawing;
  5. using System.Data;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using Core.Mes.Client.Comm.Control;
  10. using com.steering.mes.mcp.entity;
  11. using Infragistics.Win.UltraWinGrid;
  12. using Core.Mes.Client.Comm.Tool;
  13. namespace Core.StlMes.Client.Mcp.Control
  14. {
  15. public partial class CoupThreadingControl : UserControl
  16. {
  17. private Infragistics.Win.UltraWinGrid.UltraGrid _grid = null;
  18. /// <summary>
  19. /// Grid编辑区
  20. /// </summary>
  21. public Infragistics.Win.UltraWinGrid.UltraGrid Grid
  22. {
  23. get { return _grid; }
  24. }
  25. public CoupThreadingControl()
  26. {
  27. InitializeComponent();
  28. GridHelper.InitCardGrid(this.ultraDataSource1, this.ultraGrid1);
  29. _grid = this.ultraGrid1;
  30. }
  31. /// <summary>
  32. /// 接箍车丝实绩实体对象
  33. /// </summary>
  34. private ThreadingResult _result = new ThreadingResult();
  35. public ThreadingResult Value
  36. {
  37. get { return _result; }
  38. set
  39. {
  40. if (value != null)
  41. {
  42. _result = value;
  43. UpdateData();
  44. }
  45. }
  46. }
  47. /// <summary>
  48. /// 更新数据
  49. /// </summary>
  50. public void UpdateData()
  51. {
  52. if (_result != null)
  53. {
  54. ultraDataSource1.Rows[0]["Machine_No"] = _result.MachineNo;
  55. ultraDataSource1.Rows[0]["Threading_Pieces"] = _result.ProducedPcs;
  56. ultraDataSource1.Rows[0]["Qualified_Pieces"] = _result.QualiriedPcs;
  57. ultraDataSource1.Rows[0]["Rejected_Pieces"] = _result.RejectedPieces;
  58. ultraDataSource1.Rows[0]["Rjected_Reason"] = _result.RejectedReason;
  59. ultraDataSource1.Rows[0]["Producer"] = _result.Producer;
  60. ultraDataSource1.Rows[0]["Produce_Time"] = _result.ProducerTime;
  61. ultraDataSource1.Rows[0]["Threading_Shift"] = _result.ColShft;
  62. ultraDataSource1.Rows[0]["Threading_Group"] = _result.ColGroup;
  63. ultraDataSource1.Rows[0]["Threading_Operator"] = _result.ColUser;
  64. ultraDataSource1.Rows[0]["Threading_Time"] = _result.ColTime;
  65. }
  66. else
  67. {
  68. GridHelper.InitCardGrid(ultraDataSource1, ultraGrid1);
  69. }
  70. ultraGrid1.UpdateData();
  71. }
  72. /// <summary>
  73. /// 控件编辑后更新已修改数据
  74. /// </summary>
  75. public new void Update()
  76. {
  77. ultraGrid1.UpdateData();
  78. }
  79. /// <summary>
  80. /// 控件编辑后更新已修改数据
  81. /// </summary>
  82. /// <param name="sender"></param>
  83. /// <param name="e"></param>
  84. private void ultraGrid1_AfterCellUpdate(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  85. {
  86. try
  87. {
  88. switch (e.Cell.Column.Key)
  89. {
  90. case "Machine_No":
  91. Value.MachineNo = e.Cell.Value.ToString();
  92. break;
  93. case "Threading_Pieces":
  94. Value.ProducedPcs = e.Cell.Value.ToString();
  95. break;
  96. case "Qualified_Pieces":
  97. Value.QualiriedPcs = e.Cell.Value.ToString();
  98. break;
  99. case "Rejected_Pieces":
  100. Value.RejectedPieces = e.Cell.Value.ToString();
  101. break;
  102. case "Rjected_Reason":
  103. Value.RejectedReason = e.Cell.Value.ToString();
  104. break;
  105. case "Produce_Time":
  106. Value.ProducerTime = e.Cell.Value.ToString();
  107. break;
  108. case "Producer":
  109. Value.Producer = e.Cell.Value.ToString();
  110. break;
  111. case "Threading_Shift":
  112. Value.ColShft = e.Cell.Value.ToString();
  113. break;
  114. case "Threading_Group":
  115. Value.ColGroup = e.Cell.Value.ToString();
  116. break;
  117. case "Threading_Operator":
  118. Value.ColUser = e.Cell.Value.ToString();
  119. break;
  120. case "Threading_Time":
  121. Value.ColTime = e.Cell.Value.ToString();
  122. break;
  123. }
  124. }
  125. catch
  126. {
  127. }
  128. }
  129. /// <summary>
  130. /// 设置grid中一部分的编辑模式
  131. /// </summary>
  132. /// <param name="pamars">要设置的部分</param>
  133. /// <param name="activation"></param>
  134. public void SetGridActivation(Object[] pamars, Activation activation)
  135. {
  136. if (pamars != null)
  137. {
  138. foreach (string column in pamars)
  139. {
  140. // this.ultraGrid1.DisplayLayout.Override.CellAppearance
  141. this.ultraGrid1.DisplayLayout.Bands[0].Columns[column].CellActivation = activation;
  142. // Infragistics.Win.UltraWinGrid.CellEventArgs e = new CellEventArgs(this.ultraGrid1.Selected.Cells);
  143. //e.Cell.Column.CellActivation.ToString() = activation;
  144. if (activation == Activation.AllowEdit)
  145. {
  146. this.ultraGrid1.DisplayLayout.Bands[0].Columns[column].CellAppearance.BackColor = Color.White;
  147. if (column == "Produce_Time")
  148. {
  149. this.ultraGrid1.DisplayLayout.Bands[0].Columns[column].EditorComponent = this.ultraDateTimeEditor1;
  150. }
  151. }
  152. else
  153. {
  154. this.ultraGrid1.DisplayLayout.Bands[0].Columns[column].CellAppearance.BackColor = Color.Gray;
  155. if (column == "Produce_Time")
  156. {
  157. this.ultraGrid1.DisplayLayout.Bands[0].Columns[column].EditorComponent = null;
  158. }
  159. }
  160. }
  161. }
  162. }
  163. /// <summary>
  164. /// 验证格试
  165. /// </summary>
  166. public bool ValidInput1()
  167. {
  168. bool p = true;
  169. if (!StringUtil.IsInt(ultraDataSource1.Rows[0]["Threading_Pieces"].ToString()))
  170. {
  171. MessageBox.Show("加工支数 请输入整数", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  172. p = false;
  173. }
  174. if (!StringUtil.IsInt(ultraDataSource1.Rows[0]["Qualified_Pieces"].ToString()))
  175. {
  176. MessageBox.Show("合格支数 请输入整数", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  177. p = false;
  178. }
  179. if (!StringUtil.IsInt(ultraDataSource1.Rows[0]["Rejected_Pieces"].ToString()))
  180. {
  181. MessageBox.Show("废品数 请输入整数", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  182. p = false;
  183. }
  184. return p;
  185. }
  186. }
  187. }