BaseInfoPopup.cs 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. using Core.Mes.Client.Comm.Tool;
  2. using CoreFS.CA06;
  3. using Infragistics.Win.UltraWinGrid;
  4. using System.Data;
  5. using System.Linq;
  6. namespace Core.StlMes.Client.Judge.Forms
  7. {
  8. public partial class BaseInfoPopup : FrmBase
  9. {
  10. private DataTable _dt;
  11. private UltraGridRow _choicedRow;
  12. private string _whereColumn;
  13. public UltraGridRow ChoicedRow
  14. {
  15. get { return _choicedRow; }
  16. set { _choicedRow = value; }
  17. }
  18. public BaseInfoPopup(DataTable dt, string whereColumn, params string[] hideColumns)
  19. {
  20. InitializeComponent();
  21. _dt = dt;
  22. ultraGrid1.DataSource = _dt;
  23. _whereColumn = whereColumn;
  24. foreach (UltraGridColumn column in ultraGrid1.DisplayLayout.Bands[0].Columns)
  25. {
  26. if (hideColumns.Contains(column.Key))
  27. {
  28. ultraGrid1.DisplayLayout.Bands[0].Columns[column.Key].Hidden = true;
  29. }
  30. }
  31. ultraGrid1.DisplayLayout.Override.AllowUpdate = Infragistics.Win.DefaultableBoolean.False;
  32. //GridHelper.RefreshAndAutoSize(ultraGrid1);
  33. }
  34. private void Query()
  35. {
  36. string txt = labelTextBox1.Checked ? labelTextBox1.Text.Trim() : "";
  37. _dt.DefaultView.RowFilter = _whereColumn + " LIKE '%" + txt + "%'";
  38. }
  39. private void Choice()
  40. {
  41. if (ultraGrid1.ActiveRow == null)
  42. {
  43. MessageUtil.ShowWarning("请选择一条记录!");
  44. return;
  45. }
  46. _choicedRow = ultraGrid1.ActiveRow;
  47. this.DialogResult = System.Windows.Forms.DialogResult.OK;
  48. }
  49. private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
  50. {
  51. switch (e.Tool.Key)
  52. {
  53. case "查询":
  54. Query();
  55. break;
  56. case "确认选择":
  57. Choice();
  58. break;
  59. }
  60. }
  61. private void ultraTextEditor1_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
  62. {
  63. PopupTextBox popupTextBox = new PopupTextBox(ultraGrid1.ActiveCell.Value.ToString(), 10000);
  64. popupTextBox.TxtInfo.ReadOnly = true;
  65. popupTextBox.UltraPanel1.Visible = false;
  66. popupTextBox.ShowDialog();
  67. }
  68. private void ultraGrid1_DoubleClickRow(object sender, Infragistics.Win.UltraWinGrid.DoubleClickRowEventArgs e)
  69. {
  70. Choice();
  71. }
  72. }
  73. }