RuleSelector.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  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.Threading.Tasks;
  9. using System.Windows.Forms;
  10. namespace OTSIncAReportApp._1_UI.OTSReportExport
  11. {
  12. public partial class RuleSelector: Form
  13. {
  14. public DataTable RuleTable;
  15. public RuleSelector(DataTable a_RuleTable)
  16. {
  17. InitializeComponent();
  18. RuleTable = a_RuleTable.Copy();
  19. }
  20. private void RuleSelector_Load(object sender, EventArgs e)
  21. {
  22. checkedListBox1.Items.Clear();
  23. for (int i = 0; i < RuleTable.Rows.Count; i++)
  24. {
  25. checkedListBox1.Items.Add(RuleTable.Rows[i]["StrName"]);
  26. }
  27. for (int i = 0; i < RuleTable.Rows.Count; i++)
  28. {
  29. if (RuleTable.Rows[i]["display"].ToString() == "0")
  30. {
  31. checkedListBox1.SetItemChecked(i, false);
  32. }
  33. else
  34. {
  35. checkedListBox1.SetItemChecked(i, true);
  36. }
  37. }
  38. }
  39. private void button2_Click(object sender, EventArgs e)
  40. {
  41. this.Close();
  42. }
  43. private void button1_Click(object sender, EventArgs e)
  44. {
  45. for (int i=0; i < RuleTable.Rows.Count; i++)
  46. {
  47. if (!checkedListBox1.GetItemChecked(i))
  48. {
  49. RuleTable.Rows[i]["display"] = "0";
  50. }
  51. else
  52. {
  53. RuleTable.Rows[i]["display"] = "1";
  54. }
  55. }
  56. this.Close();
  57. }
  58. private void checkBox1_CheckedChanged(object sender, EventArgs e)
  59. {
  60. CheckBox checkBox = sender as CheckBox;
  61. // 根据CheckBox的状态设置CheckedListBox的所有项
  62. for (int i = 0; i < checkedListBox1.Items.Count; i++)
  63. {
  64. checkedListBox1.SetItemChecked(i, checkBox.Checked);
  65. }
  66. }
  67. }
  68. }