TaskEditorSignal.cs 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. using DevExpress.Utils.About;
  2. using DevExpress.Utils.Extensions;
  3. using DevExpress.XtraBars.Customization;
  4. using DevExpress.XtraEditors;
  5. using DevExpress.XtraEditors.Controls;
  6. using DevExpress.XtraEditors.DXErrorProvider;
  7. using DevExpress.XtraGrid;
  8. using DevExpress.XtraPrinting.Native;
  9. using DPP_YH_Core.Extensions;
  10. using DxHelper;
  11. using ExtensionsDev;
  12. using System;
  13. using System.Collections.Generic;
  14. using System.ComponentModel;
  15. using System.ComponentModel.DataAnnotations;
  16. using System.Data;
  17. using System.Data.Entity;
  18. using System.Drawing;
  19. using System.Linq;
  20. using System.Reflection;
  21. using System.Runtime.InteropServices;
  22. using System.Text;
  23. using System.Threading.Tasks;
  24. using System.Windows.Documents;
  25. using System.Windows.Forms;
  26. using XdCxRhDW.Dto;
  27. using XdCxRhDW.Entity;
  28. using XdCxRhDW.Repostory;
  29. namespace XdCxRhDW.App.EditForms
  30. {
  31. public partial class TaskEditorSignal : DevExpress.XtraEditors.XtraForm
  32. {
  33. public TaskInfo info;
  34. public List<SigInfo> listSigInfo = new List<SigInfo>();
  35. public List<SigInfo> listSigInfoSelected = new List<SigInfo>();
  36. public TaskEditorSignal()
  37. {
  38. InitializeComponent();
  39. this.Text = "添加任务频点";
  40. info = new TaskInfo();
  41. this.StartPosition = FormStartPosition.CenterParent;
  42. }
  43. public TaskEditorSignal(TaskInfo info, List<SigInfo> listSigInfoSelected)
  44. : this()
  45. {
  46. this.Text = $"编辑任务[{info.TaskName}]频点";
  47. this.info = info;
  48. this.listSigInfoSelected = listSigInfoSelected.Skip(0).ToList();
  49. }
  50. private async void TaskEditorSignal_Load(object sender, EventArgs e)
  51. {
  52. try
  53. {
  54. gridTaskSignal.UseDefault(listSigInfo).UseMultiSelect().UseRowNumber().DrawGridColumnHeaderCheckBox();
  55. using (var db = new RHDWContext())
  56. {
  57. var items = await db.SigInfos.ToListAsync();
  58. listSigInfo.AddRange(items);
  59. if (this.Text.StartsWith("编辑"))
  60. {
  61. for (int i = 0; i < listSigInfo.Count; i++)
  62. {
  63. for (int j = 0; j < this.listSigInfoSelected.Count; j++)
  64. {
  65. if (listSigInfo[i].ID == this.listSigInfoSelected[j].ID)
  66. {
  67. this.gridViewTaskSignal.SelectRow(i);
  68. }
  69. }
  70. }
  71. //for (int i = 0; i < listSigInfo.Count; i++)
  72. //{
  73. // gridViewTaskSignal.SetRowCellValue(i, gridViewTaskSignal.Columns[0], true);
  74. //}
  75. }
  76. }
  77. }
  78. catch (Exception ex)
  79. {
  80. Serilog.Log.Error(ex, "查询信号信息异常");
  81. DxHelper.MsgBoxHelper.ShowError("查询信号信息异常");
  82. }
  83. }
  84. private void gridViewTaskSignal_SelectionChanged(object sender, DevExpress.Data.SelectionChangedEventArgs e)
  85. {
  86. //var selectedRows = gridViewTaskSignal.GetSelectedRows();
  87. //listSigInfoSelected.Clear();
  88. //for (int i = 0; i < selectedRows.Count(); i++)
  89. //{
  90. // //var signalValue = gridViewTaskSignal.GetRowCellValue(selectedRows[i], nameof(FileResEntity.Signal));
  91. // var res = gridViewTaskSignal.GetRow(selectedRows[i]) as SigInfo;
  92. // listSigInfoSelected.Add(res);
  93. //}
  94. //gridViewTaskSignal.ClearSelection();//全不选
  95. //gridViewTaskSignal.SelectAll();//全选
  96. }
  97. private void btnCancle_Click(object sender, EventArgs e)
  98. {
  99. this.DialogResult = DialogResult.Cancel;
  100. }
  101. private void btnOk_Click(object sender, EventArgs e)
  102. {
  103. var selectedRows = gridViewTaskSignal.GetSelectedRows();
  104. // List <SigInfo> ress= new List <SigInfo>();
  105. listSigInfoSelected.Clear();
  106. for (int i = 0; i < selectedRows.Count(); i++)
  107. {
  108. //var signalValue = gridViewTaskSignal.GetRowCellValue(selectedRows[i], nameof(FileResEntity.Signal));
  109. var res = gridViewTaskSignal.GetRow(selectedRows[i]) as SigInfo;
  110. listSigInfoSelected.Add(res);
  111. }
  112. //listSigInfoSelected.Clear();
  113. //listSigInfoSelected.AddRange(ress);
  114. this.DialogResult = DialogResult.OK;
  115. }
  116. }
  117. }