SelectEdit.cs 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using com.steering.mes.mcp.entity;
  10. using Core.Mes.Client.Comm.Server;
  11. using Core.Mes.Client.Comm.Tool;
  12. using Core.StlMes.Client.Mcp.Control.Entity;
  13. using CoreFS.CA06;
  14. using Infragistics.Win;
  15. using Infragistics.Win.UltraWinGrid;
  16. using Infragistics.Win.UltraWinToolbars;
  17. namespace Core.StlMes.Client.Mcp.Control.Common
  18. {
  19. public partial class SelectEdit : FrmBase
  20. {
  21. private bool _saveCode = false;
  22. public string Codes
  23. {
  24. get
  25. {
  26. List<SelectEditEntity> list = selectEditEntityBindingSource.DataSource as List<SelectEditEntity>;
  27. if (list == null || !list.Any() || !list.Any(p=>p.Chk)) return "";
  28. return
  29. list.Where(p => p.Chk)
  30. .Select(p => _saveCode ? p.Basecode : p.Basename)
  31. .Aggregate((a, b) => a + ";" + b).Substring(0);
  32. }
  33. }
  34. public SelectEdit(OpeBase Ob, bool SaveCode, string sortCode, List<string> useds )
  35. {
  36. InitializeComponent();
  37. ob = Ob;
  38. _saveCode = SaveCode;
  39. ugDefault.DisplayLayout.Override.AllowAddNew =SaveCode?AllowAddNew.Default : AllowAddNew.TemplateOnBottom;
  40. ugDefault.DisplayLayout.Bands[0].Columns["Basename"].CellActivation = SaveCode ? Activation.ActivateOnly : Activation.AllowEdit;
  41. if (!SaveCode) ugDefault.DisplayLayout.Bands[0].Columns["Basename"].EditorComponent = cmbTextDefault;
  42. List<SelectEditEntity> list =new List<SelectEditEntity>();
  43. if (string.IsNullOrEmpty(sortCode))
  44. {
  45. useds.ForEach(p => list.Add(new SelectEditEntity()
  46. {
  47. Chk = true,
  48. Basename = p
  49. }));
  50. }
  51. else
  52. {
  53. list =
  54. EntityHelper.GetData<SelectEditEntity>(
  55. "com.steering.mes.mcp.collarMaterial.ComBaseInfo.getBaseInfo",
  56. new object[] { sortCode }, ob);
  57. list.ForEach(p=>
  58. {
  59. if (useds.Contains(p.Basecode) || useds.Contains(p.Basename)) p.Chk = true;
  60. });
  61. }
  62. selectEditEntityBindingSource.DataSource = list;
  63. }
  64. private void ultraToolbarsManager1_ToolClick(object sender, ToolClickEventArgs e)
  65. {
  66. switch (e.Tool.Key)
  67. {
  68. case "Save":
  69. Save();
  70. break;
  71. case "Close":
  72. CloseFrm();
  73. break;
  74. }
  75. }
  76. protected override void OnLoad(EventArgs e)
  77. {
  78. base.OnLoad(e);
  79. foreach (var ugc in ugDefault.DisplayLayout.Bands[0].Columns)
  80. ugc.SortIndicator = SortIndicator.Disabled;
  81. ugDefault.DisplayLayout.Override.AllowRowFiltering = DefaultableBoolean.False;
  82. }
  83. private void CloseFrm()
  84. {
  85. DialogResult = DialogResult.Cancel;
  86. Close();
  87. }
  88. /// <summary>
  89. /// 保存可疑、剔除品
  90. /// </summary>
  91. private void Save()
  92. {
  93. ugDefault.UpdateData();
  94. DialogResult = DialogResult.OK;
  95. }
  96. private void cmbTextDefault_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
  97. {
  98. TextEdit TextEdit = new TextEdit() { data = ugDefault.ActiveCell.Text };
  99. TextEdit.ShowDialog();
  100. if (TextEdit.DialogResult == DialogResult.OK)
  101. {
  102. ugDefault.ActiveCell.Value = TextEdit.data;
  103. }
  104. }
  105. }
  106. }