ChamferTestRecord.cs 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Windows.Forms;
  5. using Core.Mes.Client.Comm.Tool;
  6. using Core.StlMes.Client.Mcp.Control.Entity;
  7. using CoreFS.CA06;
  8. using Infragistics.Win;
  9. using Infragistics.Win.UltraWinGrid;
  10. using Infragistics.Win.UltraWinToolbars;
  11. namespace Core.StlMes.Client.Mcp.Control
  12. {
  13. public partial class ChamferTestRecord : FrmBase
  14. {
  15. public List<MchChamferingResultDEntity> Detail { get; private set; }
  16. public ChamferTestRecord(List<MchChamferingResultDEntity> _detail)
  17. {
  18. InitializeComponent();
  19. if (_detail == null) _detail = new List<MchChamferingResultDEntity>();
  20. mchChamferingResultDEntityBindingSource.DataSource = _detail.Select(p=>p.Clone()).ToList();
  21. }
  22. protected override void OnLoad(EventArgs e)
  23. {
  24. base.OnLoad(e);
  25. ultraGridDetailDes1.DisplayLayout.Override.HeaderClickAction = HeaderClickAction.Default;
  26. ultraGridDetailDes1.DisplayLayout.Override.AllowRowFiltering = DefaultableBoolean.False;
  27. EntityHelper.ShowGridCaption<MchChamferingResultDEntity>(ultraGridDetailDes1.DisplayLayout.Bands[0]);
  28. }
  29. private void ultraToolbarsManager1_ToolClick(object sender, ToolClickEventArgs e)
  30. {
  31. switch (e.Tool.Key)
  32. {
  33. case "Save":
  34. Save();
  35. break;
  36. case "Close":
  37. CloseFrm();
  38. break;
  39. }
  40. }
  41. private void CloseFrm()
  42. {
  43. DialogResult = DialogResult.Cancel;
  44. Close();
  45. }
  46. /// <summary>
  47. /// 保存可疑、剔除品
  48. /// </summary>
  49. private void Save()
  50. {
  51. ultraGridDetailDes1.UpdateData();
  52. var list1 =
  53. mchChamferingResultDEntityBindingSource.DataSource as List<MchChamferingResultDEntity>;
  54. list1 = list1.Where(p => p.Chk).ToList();
  55. /*
  56. foreach (var MchBugDEntity in list1)
  57. {
  58. if (MchBugDEntity.MeasurementTime == "")
  59. {
  60. MessageUtil.ShowTips("测量时间不能为空!");
  61. return;
  62. }
  63. if (MchBugDEntity.DriftModelNo == "")
  64. {
  65. MessageUtil.ShowTips("通经头编号不能为空!");
  66. return;
  67. }
  68. if (MchBugDEntity.DriftModelLen == null || MchBugDEntity.DriftModelLen <= 0)
  69. {
  70. MessageUtil.ShowTips("请输入正确的通径头有效长度!");
  71. return;
  72. }
  73. }*/
  74. Detail = list1;
  75. DialogResult = DialogResult.OK;
  76. }
  77. private void ultraGridDetailDes1_InitializeTemplateAddRow(object sender, InitializeTemplateAddRowEventArgs e)
  78. {
  79. if (ultraGridDetailDes1.ActiveRow == null)
  80. e.TemplateAddRow.Activated = true;
  81. }
  82. private void ultraGridDetailDes1_KeyDown(object sender, KeyEventArgs e)
  83. {
  84. if (e.Control && e.KeyCode == Keys.V)
  85. {
  86. Copy();
  87. }
  88. }
  89. private void Copy()
  90. {
  91. try
  92. {
  93. var list1 =
  94. mchChamferingResultDEntityBindingSource.DataSource as List<MchChamferingResultDEntity>;
  95. string data = Clipboard.GetText();
  96. if (string.IsNullOrEmpty(data)) return;
  97. string[] DataRows = data.Split('\n');
  98. List<MchChamferingResultDEntity> NewList = new List<MchChamferingResultDEntity>();
  99. for (int i = 0; i < DataRows.Length; i++)
  100. {
  101. if (string.IsNullOrWhiteSpace(DataRows[i])) continue;
  102. string[] DataCell = DataRows[i].Split('\t');
  103. int StartCount = 0;
  104. if (string.IsNullOrWhiteSpace(DataCell[0])) StartCount++;
  105. NewList.Add(new MchChamferingResultDEntity()
  106. {
  107. AngleVal = DataCell[StartCount++],
  108. EdgeVal = DataCell.Length > StartCount ? DataCell[StartCount++] : "",
  109. CutVal = DataCell.Length > StartCount ? DataCell[StartCount++] : "",
  110. Chk = true
  111. });
  112. }
  113. mchChamferingResultDEntityBindingSource.DataSource = NewList;
  114. }
  115. catch (Exception ex)
  116. {
  117. // log
  118. }
  119. }
  120. private void ToolStripMenuItem_Click(object sender, EventArgs e)
  121. {
  122. Copy();
  123. }
  124. }
  125. }