OTSReport_TemplateDesignerRM.cs 61 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134
  1. using OTSIncAReportApp.OTSSampleReportInfo;
  2. using OTSIncAReportApp.SysMgrTools;
  3. using OTSPeriodicTable;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Windows.Forms;
  7. namespace OTSIncAReportApp.OTSTemplateDesigner
  8. {
  9. public partial class OTSReport_TemplateDesignerRM : Form
  10. {
  11. #region 全局变量
  12. public OTSReport_Export m_OTSReport_Export;
  13. System.Collections.Hashtable table;
  14. #endregion
  15. #region 构造函数及窗体加载
  16. public OTSReport_TemplateDesignerRM()
  17. {
  18. InitializeComponent();
  19. }
  20. public OTSReport_TemplateDesignerRM(OTSReport_Export in_otsreport_export)
  21. {
  22. InitializeComponent();
  23. m_OTSReport_Export = in_otsreport_export;
  24. #region 国际化语言
  25. Language lan = new Language(this);
  26. table = lan.GetNameTable(this.Name);
  27. #endregion
  28. }
  29. private void OTSReport_TemplateDesignerRM_Load(object sender, EventArgs e)
  30. {
  31. //绑定各下拉框的值
  32. BindControl();
  33. //读取默认值
  34. LoadControls();
  35. }
  36. /// <summary>
  37. /// 为各下拉控件绑定值
  38. /// </summary>
  39. private void BindControl()
  40. {
  41. #region 颗粒尺寸分析结果
  42. //计算方式
  43. //BindComboBox(DisplayPicutureType.AnalyzeDataChart, cb_klcc_jsfs, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, (int)CALCULATE_CHART_TYPE.TRIO_CHART, OTS_RETORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  44. BindComboBox(cb_klcc_jsfs, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  45. //粒级表
  46. //BindComboBox(DisplayPicutureType.AnalyzeDataChart, cb_klcc_ljb, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, (int)CALCULATE_CHART_TYPE.TRIO_CHART, OTS_RETORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE);
  47. BindComboBox(cb_klcc_ljb, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE);
  48. //颗粒范围
  49. //BindComboBox(DisplayPicutureType.AnalyzeDataTable, cb_klcc_klfw, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_TABLE_TYPE, (int)CALCULATE_TABLE_TYPE.PARTICALE_GENE_INFO, OTS_RETORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  50. BindComboBox(cb_klcc_klfw, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  51. #endregion
  52. #region 夹杂物分类图
  53. //显示图形
  54. cb_jzwfl_xstx.Items.Add(table["report1"].ToString());
  55. cb_jzwfl_xstx.Items.Add(table["report2"].ToString());
  56. cb_jzwfl_xstx.Items.Add(table["report3"].ToString());
  57. cb_jzwfl_xstx.Items.Add(table["report4"].ToString());
  58. cb_jzwfl_xstx.Items.Add(table["report5"].ToString());
  59. cb_jzwfl_xstx.SelectedIndex = 0;
  60. //计算方式
  61. //BindComboBox(DisplayPicutureType.AnalyzeDataChart, cb_jzwfl_jsfs, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, (int)CALCULATE_CHART_TYPE.TRIO_CHART, OTS_RETORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  62. //BindComboBox(cb_jzwfl_jsfs, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  63. //粒级表
  64. //BindComboBox(DisplayPicutureType.AnalyzeDataChart, cb_jzwfl_ljb, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, (int)CALCULATE_CHART_TYPE.TRIO_CHART, OTS_RETORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE);
  65. BindComboBox(cb_jzwfl_ljb, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE);
  66. //颗粒范围
  67. //BindComboBox(DisplayPicutureType.AnalyzeDataTable, cb_jzwfl_klfw, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_TABLE_TYPE, (int)CALCULATE_TABLE_TYPE.PARTICALE_GENE_INFO, OTS_RETORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  68. BindComboBox(cb_jzwfl_klfw, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  69. #endregion
  70. #region 元素分析表
  71. //计算方式
  72. //BindComboBox(DisplayPicutureType.AnalyzeDataChart, cb_yxfx_jsfs, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, (int)CALCULATE_CHART_TYPE.TRIO_CHART, OTS_RETORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  73. //BindComboBox(cb_yxfx_jsfs, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  74. //颗粒范围
  75. //BindComboBox(DisplayPicutureType.AnalyzeDataTable, cb_ysfx_klfw, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_TABLE_TYPE, (int)CALCULATE_TABLE_TYPE.PARTICALE_GENE_INFO, OTS_RETORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  76. BindComboBox(cb_ysfx_klfw, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  77. #endregion
  78. #region 元素成份图
  79. //显示图形
  80. cb_yscf_xstx.Items.Add(table["report1"].ToString());
  81. cb_yscf_xstx.Items.Add(table["report2"].ToString());
  82. cb_yscf_xstx.Items.Add(table["report3"].ToString());
  83. cb_yscf_xstx.Items.Add(table["report4"].ToString());
  84. cb_yscf_xstx.Items.Add(table["report5"].ToString());
  85. cb_yscf_xstx.SelectedIndex = 0;
  86. //计算方式
  87. //BindComboBox(DisplayPicutureType.AnalyzeDataChart, cb_yscf_jsfs, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, (int)CALCULATE_CHART_TYPE.TRIO_CHART, OTS_RETORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  88. //BindComboBox(cb_yscf_jsfs, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  89. //颗粒范围
  90. //BindComboBox(DisplayPicutureType.AnalyzeDataTable, cb_yscf_klfw, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_TABLE_TYPE, (int)CALCULATE_TABLE_TYPE.PARTICALE_GENE_INFO, OTS_RETORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  91. BindComboBox(cb_yscf_klfw, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  92. #endregion
  93. #region 三元相图
  94. //计算方式
  95. //BindComboBox(DisplayPicutureType.AnalyzeDataChart, cb_syxt_jsfs, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, (int)CALCULATE_CHART_TYPE.TRIO_CHART, OTS_RETORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  96. //BindComboBox(cb_syxt_jsfs, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  97. //颗粒范围
  98. //BindComboBox(DisplayPicutureType.AnalyzeDataTable, cb_syxt_klfw, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, (int)CALCULATE_CHART_TYPE.TRIO_CHART, OTS_RETORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  99. BindComboBox(cb_syxt_klfw, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  100. //粒级表
  101. //BindComboBox(DisplayPicutureType.AnalyzeDataChart, cb_syxt_ljb, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, (int)CALCULATE_CHART_TYPE.TRIO_CHART, OTS_RETORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE);
  102. BindComboBox(cb_syxt_ljb, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE);
  103. //每行显示数量
  104. cb_syxt_mhxssl.Items.Add("2");
  105. cb_syxt_mhxssl.Items.Add("3");
  106. cb_syxt_mhxssl.SelectedIndex = 0;
  107. //三元相图模板s
  108. ComboBox lscb = new ComboBox();
  109. //BindComboBox(DisplayPicutureType.AnalyzeDataChart, lscb, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, (int)CALCULATE_CHART_TYPE.TRIO_CHART, OTS_RETORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE);
  110. BindComboBox(lscb, OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE);
  111. for (int i = 0; i < lscb.Items.Count; i++)
  112. {
  113. lbv_syxt_mblb.Items.Add(lscb.Items[i].ToString());
  114. }
  115. #endregion
  116. #region 颗粒列表
  117. //计算方式
  118. //BindComboBox(DisplayPicutureType.AnalyzeDataChart, cb_kllb_jsfs, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, (int)CALCULATE_CHART_TYPE.TRIO_CHART, OTS_RETORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  119. //BindComboBox(cb_kllb_jsfs, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);
  120. //颗粒范围
  121. //BindComboBox(DisplayPicutureType.AnalyzeDataTable, cb_kllb_klfw, OTS_RETORT_PROP_GRID_ITEMS.CALCULATE_TABLE_TYPE, (int)CALCULATE_TABLE_TYPE.PARTICALE_GENE_INFO, OTS_RETORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  122. BindComboBox(cb_kllb_klfw, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE);
  123. #endregion
  124. }
  125. /// <summary>
  126. /// 验证各控件输入的值
  127. /// </summary>
  128. private bool VerifyControlValue()
  129. {
  130. int selectnumber = 0;
  131. for (int i = 0; i < lbv_syxt_mblb.CheckedItems.Count; i++)
  132. {
  133. if (lbv_syxt_mblb.CheckedItems[i].Checked == true)
  134. selectnumber++;
  135. }
  136. if (cb_syxt_mhxssl.Text == "2")
  137. {
  138. if (selectnumber % 2 != 0)
  139. {
  140. //选择的不是2的整倍数,请重新选择
  141. MessageBox.Show(table["report10"].ToString(), table["report12"].ToString(), MessageBoxButtons.OK, MessageBoxIcon.Information);
  142. return false;
  143. }
  144. }
  145. if (cb_syxt_mhxssl.Text == "3")
  146. {
  147. if (selectnumber % 3 != 0)
  148. {
  149. //选择的不是2的整倍数,请重新选择
  150. MessageBox.Show(table["report11"].ToString(), table["report12"].ToString(), MessageBoxButtons.OK, MessageBoxIcon.Information);
  151. return false;
  152. }
  153. }
  154. return true;
  155. }
  156. #endregion
  157. #region 按键事件
  158. private void button2_Click(object sender, EventArgs e)
  159. {
  160. this.Close();
  161. }
  162. private void button1_Click(object sender, EventArgs e)
  163. {
  164. if ( SaveTemplateParametersToXml())
  165. {
  166. SaveTemplateParameters();
  167. }
  168. }
  169. private void button4_Click(object sender, EventArgs e)
  170. {
  171. //元素分析表,显示元素
  172. SetPeriodicTableControl(tb_ysfx_xsys, m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys);
  173. }
  174. private void button5_Click(object sender, EventArgs e)
  175. {
  176. //元素成份图,显示元素
  177. SetPeriodicTableControl(tb_yscf_ysxx, m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx);
  178. }
  179. private void button3_Click(object sender, EventArgs e)
  180. {
  181. //颗粒列表,显示元素
  182. SetPeriodicTableControl(tb_kllb_sxys, m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys);
  183. }
  184. #endregion
  185. #region 另存到文件
  186. private bool SaveTemplateParametersToXml()
  187. {
  188. string path = string.Empty;
  189. SaveFileDialog save = new SaveFileDialog();
  190. save.Filter = "XML File|*.xml";
  191. save.InitialDirectory = @System.Windows.Forms.Application.StartupPath + "\\Config\\ProData";
  192. if (save.ShowDialog() != DialogResult.OK)
  193. {
  194. return false;
  195. }
  196. path = save.FileName;//赋值目录
  197. if (path != string.Empty)
  198. {
  199. m_OTSReport_Export.m_mbszclass.M_DZ.route = path;
  200. OTSIncAReportApp.Controls.XmlConfigUtil xmlutil = new OTSIncAReportApp.Controls.XmlConfigUtil(path);
  201. //首页
  202. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_ZBT.ToString(), "M_SY", "str_tb_ZBT");
  203. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_FBT.ToString(), "M_SY", "str_tb_FBT");
  204. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_YPBH.ToString(), "M_SY", "str_tb_YPBH");
  205. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_CKBZ.ToString(), "M_SY", "str_tb_CKBZ");
  206. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.b_ck_ypsm.ToString(), "M_SY", "b_ck_ypsm");
  207. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.b_ck_jggk.ToString(), "M_SY", "b_ck_jggk");
  208. //页眉页脚
  209. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_ymwb.ToString(), "M_YMYJ", "str_tb_ymwb");
  210. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_KHH.ToString(), "M_YMYJ", "str_tb_KHH");
  211. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.b_ck_ym.ToString(), "M_YMYJ", "b_ck_ym");
  212. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_yjwb.ToString(), "M_YMYJ", "str_tb_yjwb");
  213. //颗粒分析结果
  214. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_ck_klcc_xsmk.ToString(), "M_KLFXJG", "b_ck_klcc_xsmk");//是否显示模块
  215. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_jsfs.ToString(), "M_KLFXJG", "index_cb_klcc_jsfs");//计算方式
  216. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_ljb.ToString(), "M_KLFXJG", "index_cb_klcc_ljb");//粒级表
  217. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_klfw.ToString(), "M_KLFXJG", "index_cb_klcc_klfw");//颗粒范围
  218. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_cb_jzwfl_xsmk.ToString(), "M_KLFXJG", "b_cb_jzwfl_xsmk");//是否显示该模块
  219. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_xstx.ToString(), "M_KLFXJG", "index_cb_jzwfl_xstx");//选择图像
  220. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_jsfs.ToString(), "M_KLFXJG", "index_cb_jzwfl_jsfs");//计算方式
  221. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_ljb.ToString(), "M_KLFXJG", "index_cb_jzwfl_ljb");//粒级表
  222. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_klfw.ToString(), "M_KLFXJG", "index_cb_jzwfl_klfw");//颗粒范围
  223. //元素分析结果
  224. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_ysfx_xsmk.ToString(), "M_YSFXJG", "b_ck_ysfx_xsmk"); //是否显示模块
  225. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yxfx_jsfs.ToString(), "M_YSFXJG", "index_cb_yxfx_jsfs"); //计算方式
  226. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_ysfx_klfw.ToString(), "M_YSFXJG", "index_cb_ysfx_klfw"); //颗粒范围
  227. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_ysfx_xsys.ToString(), "M_YSFXJG", "str_tb_ysfx_xsys"); //显示元素
  228. for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Count; i++) //元素列表
  229. {
  230. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys[i].ToString(), "M_YSFXJG", "list_str_tb_ysfx_xsys", "YS" + i.ToString());
  231. }
  232. //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取
  233. // RemoveMBSZClassNode("M_YSFXJG", "list_str_tb_ysfx_xsys", "YS", m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Count);
  234. for (int i = m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Count; i < 1000; i++)
  235. {
  236. string strxh = i.ToString();
  237. if (null != xmlutil.Read("M_YSFXJG", "list_str_tb_ysfx_xsys", "YS" + strxh))
  238. {
  239. //删除该节点
  240. xmlutil.RemoveNode("M_YSFXJG", "list_str_tb_ysfx_xsys", "YS" + strxh);
  241. }
  242. else
  243. {
  244. break;
  245. }
  246. }
  247. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_yscf_xsmk.ToString(), "M_YSFXJG", "b_ck_yscf_xsmk"); //是否显示模块
  248. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_xstx.ToString(), "M_YSFXJG", "index_cb_yscf_xstx"); //显示图形
  249. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_jsfs.ToString(), "M_YSFXJG", "index_cb_yscf_jsfs"); //计算方式
  250. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_klfw.ToString(), "M_YSFXJG", "index_cb_yscf_klfw"); //颗粒范围
  251. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_yscf_ysxx.ToString(), "M_YSFXJG", "str_tb_yscf_ysxx"); //显示元素
  252. for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx.Count; i++) //元素列表
  253. {
  254. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx[i].ToString(), "M_YSFXJG", "list_str_tb_yscf_ysxx", "YS" + i.ToString());
  255. }
  256. //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取
  257. // RemoveMBSZClassNode("M_YSFXJG", "list_str_tb_yscf_ysxx", "YS", m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx.Count);
  258. for (int i = m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx.Count; i < 1000; i++)
  259. {
  260. string strxh = i.ToString();
  261. if (null != xmlutil.Read("M_YSFXJG", "list_str_tb_yscf_ysxx", "YS" + strxh))
  262. {
  263. //删除该节点
  264. xmlutil.RemoveNode("M_YSFXJG", "list_str_tb_yscf_ysxx", "YS" + strxh);
  265. }
  266. else
  267. {
  268. break;
  269. }
  270. }
  271. //三元相图
  272. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.b_ck_syxt_xsmk.ToString(), "M_SYXT", "b_ck_syxt_xsmk"); //是否显示模块
  273. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_jsfs.ToString(), "M_SYXT", "index_cb_syxt_jsfs"); //计算方式
  274. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_klfw.ToString(), "M_SYXT", "index_cb_syxt_klfw"); //颗粒范围
  275. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_mhxssl.ToString(), "M_SYXT", "str_cb_syxt_mhxssl"); //每行显示数量
  276. for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count; i++) //三元相图模板 list 文本
  277. {
  278. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb[i].ToString(), "M_SYXT", "list_lbv_syxt_mblb", "MB" + i.ToString());
  279. }
  280. //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取
  281. //RemoveMBSZClassNode("M_SYXT", "list_lbv_syxt_mblb", "MB", m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count);
  282. for (int i = m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count; i < 1000; i++)
  283. {
  284. string strxh = i.ToString();
  285. if (null != xmlutil.Read("M_SYXT", "list_lbv_syxt_mblb", "MB" + strxh))
  286. {
  287. //删除该节点
  288. xmlutil.RemoveNode("M_SYXT", "list_lbv_syxt_mblb", "MB" + strxh);
  289. }
  290. else
  291. {
  292. break;
  293. }
  294. }
  295. for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count; i++) //三元相图模板 list 索引
  296. {
  297. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index[i].ToString(), "M_SYXT", "list_lbv_syxt_mblb_index", "MBIndex" + i.ToString());
  298. }
  299. //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取
  300. // RemoveMBSZClassNode("M_SYXT", "list_lbv_syxt_mblb_index", "MBIndex", m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count);
  301. for (int i = m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count; i < 1000; i++)
  302. {
  303. string strxh = i.ToString();
  304. if (null != xmlutil.Read("M_SYXT", "list_lbv_syxt_mblb", "MBIndex" + strxh))
  305. {
  306. //删除该节点
  307. xmlutil.RemoveNode("M_SYXT", "list_lbv_syxt_mblb", "MBIndex" + strxh);
  308. }
  309. else
  310. {
  311. break;
  312. }
  313. }
  314. //颗粒列表信息
  315. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_xsmk.ToString(), "M_KLLBXX", "b_ck_kllb_xsmk"); //是否显示模块
  316. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_jsfs.ToString(), "M_KLLBXX", "index_cb_kllb_jsfs"); //计算方式
  317. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_klfw.ToString(), "M_KLLBXX", "index_cb_kllb_klfw"); //颗粒范围
  318. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.int_tb_kllb_ylsx.ToString(), "M_KLLBXX", "int_tb_kllb_ylsx"); //数量上限
  319. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_tb_kllb_sxys.ToString(), "M_KLLBXX", "str_tb_kllb_sxys"); //显示元素
  320. for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys.Count; i++) //显示元素列表
  321. {
  322. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys[i].ToString(), "M_KLLBXX", "list_str_tb_lllb_sxys", "YS" + i.ToString());
  323. }
  324. //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取
  325. //RemoveMBSZClassNode("M_KLLBXX", "list_str_tb_lllb_sxys", "YS", m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys.Count);
  326. for (int i = m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys.Count; i < 1000; i++)
  327. {
  328. string strxh = i.ToString();
  329. if (null != xmlutil.Read("M_KLLBXX", "list_str_tb_lllb_sxys", "YS" + strxh))
  330. {
  331. //删除该节点
  332. xmlutil.RemoveNode("M_KLLBXX", "list_str_tb_lllb_sxys", "YS" + strxh);
  333. }
  334. else
  335. {
  336. break;
  337. }
  338. }
  339. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_ystx.ToString(), "M_KLLBXX", "b_ck_kllb_ystx"); //原始图像
  340. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fdtx.ToString(), "M_KLLBXX", "b_ck_kllb_fdtx"); //放大图像
  341. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_npxx.ToString(), "M_KLLBXX", "b_ck_kllb_npxx"); //能谱图像
  342. }
  343. return true;
  344. }
  345. #endregion
  346. #region 自定义方法
  347. ///<summary>
  348. ///保存到文件
  349. /// </summary>
  350. private void SaveFileToXml()
  351. {
  352. string path = m_OTSReport_Export.m_mbszclass.M_DZ.route;
  353. if (path != string.Empty)
  354. {
  355. OTSIncAReportApp.Controls.XmlConfigUtil xmlutil = new OTSIncAReportApp.Controls.XmlConfigUtil(path);
  356. //首页
  357. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_ZBT.ToString(), "M_SY", "str_tb_ZBT");
  358. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_FBT.ToString(), "M_SY", "str_tb_FBT");
  359. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_YPBH.ToString(), "M_SY", "str_tb_YPBH");
  360. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_CKBZ.ToString(), "M_SY", "str_tb_CKBZ");
  361. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.b_ck_ypsm.ToString(), "M_SY", "b_ck_ypsm");
  362. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.b_ck_jggk.ToString(), "M_SY", "b_ck_jggk");
  363. //页眉页脚
  364. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_ymwb.ToString(), "M_YMYJ", "str_tb_ymwb");
  365. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_KHH.ToString(), "M_YMYJ", "str_tb_KHH");
  366. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.b_ck_ym.ToString(), "M_YMYJ", "b_ck_ym");
  367. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_yjwb.ToString(), "M_YMYJ", "str_tb_yjwb");
  368. //颗粒分析结果
  369. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_ck_klcc_xsmk.ToString(), "M_KLFXJG", "b_ck_klcc_xsmk");//是否显示模块
  370. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_jsfs.ToString(), "M_KLFXJG", "index_cb_klcc_jsfs");//计算方式
  371. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_ljb.ToString(), "M_KLFXJG", "index_cb_klcc_ljb");//粒级表
  372. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_klfw.ToString(), "M_KLFXJG", "index_cb_klcc_klfw");//颗粒范围
  373. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_cb_jzwfl_xsmk.ToString(), "M_KLFXJG", "b_cb_jzwfl_xsmk");//是否显示该模块
  374. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_xstx.ToString(), "M_KLFXJG", "index_cb_jzwfl_xstx");//选择图像
  375. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_jsfs.ToString(), "M_KLFXJG", "index_cb_jzwfl_jsfs");//计算方式
  376. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_ljb.ToString(), "M_KLFXJG", "index_cb_jzwfl_ljb");//粒级表
  377. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_klfw.ToString(), "M_KLFXJG", "index_cb_jzwfl_klfw");//颗粒范围
  378. //元素分析结果
  379. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_ysfx_xsmk.ToString(), "M_YSFXJG", "b_ck_ysfx_xsmk"); //是否显示模块
  380. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yxfx_jsfs.ToString(), "M_YSFXJG", "index_cb_yxfx_jsfs"); //计算方式
  381. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_ysfx_klfw.ToString(), "M_YSFXJG", "index_cb_ysfx_klfw"); //颗粒范围
  382. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_ysfx_xsys.ToString(), "M_YSFXJG", "str_tb_ysfx_xsys"); //显示元素
  383. for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Count; i++) //元素列表
  384. {
  385. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys[i].ToString(), "M_YSFXJG", "list_str_tb_ysfx_xsys", "YS" + i.ToString());
  386. }
  387. //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取
  388. for (int i = m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Count; i < 1000; i++)
  389. {
  390. string strxh = i.ToString();
  391. if (null != xmlutil.Read("M_YSFXJG", "list_str_tb_ysfx_xsys", "YS" + strxh))
  392. {
  393. //删除该节点
  394. xmlutil.RemoveNode("M_YSFXJG", "list_str_tb_ysfx_xsys", "YS" + strxh);
  395. }
  396. else
  397. {
  398. break;
  399. }
  400. }
  401. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_yscf_xsmk.ToString(), "M_YSFXJG", "b_ck_yscf_xsmk"); //是否显示模块
  402. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_xstx.ToString(), "M_YSFXJG", "index_cb_yscf_xstx"); //显示图形
  403. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_jsfs.ToString(), "M_YSFXJG", "index_cb_yscf_jsfs"); //计算方式
  404. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_klfw.ToString(), "M_YSFXJG", "index_cb_yscf_klfw"); //颗粒范围
  405. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_yscf_ysxx.ToString(), "M_YSFXJG", "str_tb_yscf_ysxx"); //显示元素
  406. for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx.Count; i++) //元素列表
  407. {
  408. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx[i].ToString(), "M_YSFXJG", "list_str_tb_yscf_ysxx", "YS" + i.ToString());
  409. }
  410. //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取
  411. for (int i = m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx.Count; i < 1000; i++)
  412. {
  413. string strxh = i.ToString();
  414. if (null != xmlutil.Read("M_YSFXJG", "list_str_tb_yscf_ysxx", "YS" + strxh))
  415. {
  416. //删除该节点
  417. xmlutil.RemoveNode("M_YSFXJG", "list_str_tb_yscf_ysxx", "YS" + strxh);
  418. }
  419. else
  420. {
  421. break;
  422. }
  423. }
  424. //三元相图
  425. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.b_ck_syxt_xsmk.ToString(), "M_SYXT", "b_ck_syxt_xsmk"); //是否显示模块
  426. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_jsfs.ToString(), "M_SYXT", "index_cb_syxt_jsfs"); //计算方式
  427. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_klfw.ToString(), "M_SYXT", "index_cb_syxt_klfw"); //颗粒范围
  428. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_mhxssl.ToString(), "M_SYXT", "str_cb_syxt_mhxssl"); //每行显示数量
  429. for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count; i++) //三元相图模板 list 文本
  430. {
  431. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb[i].ToString(), "M_SYXT", "list_lbv_syxt_mblb", "MB" + i.ToString());
  432. }
  433. //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取
  434. for (int i = m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count; i < 1000; i++)
  435. {
  436. string strxh = i.ToString();
  437. if (null != xmlutil.Read("M_SYXT", "list_lbv_syxt_mblb", "MB" + strxh))
  438. {
  439. //删除该节点
  440. xmlutil.RemoveNode("M_SYXT", "list_lbv_syxt_mblb", "MB" + strxh);
  441. }
  442. else
  443. {
  444. break;
  445. }
  446. }
  447. for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count; i++) //三元相图模板 list 索引
  448. {
  449. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index[i].ToString(), "M_SYXT", "list_lbv_syxt_mblb_index", "MBIndex" + i.ToString());
  450. }
  451. //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取
  452. for (int i = m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count; i < 1000; i++)
  453. {
  454. string strxh = i.ToString();
  455. if (null != xmlutil.Read("M_SYXT", "list_lbv_syxt_mblb_index", "MBIndex" + strxh))
  456. {
  457. //删除该节点
  458. xmlutil.RemoveNode("M_SYXT", "list_lbv_syxt_mblb_index", "MBIndex" + strxh);
  459. }
  460. else
  461. {
  462. break;
  463. }
  464. }
  465. //颗粒列表信息
  466. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_xsmk.ToString(), "M_KLLBXX", "b_ck_kllb_xsmk"); //是否显示模块
  467. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_jsfs.ToString(), "M_KLLBXX", "index_cb_kllb_jsfs"); //计算方式
  468. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_klfw.ToString(), "M_KLLBXX", "index_cb_kllb_klfw"); //颗粒范围
  469. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.int_tb_kllb_ylsx.ToString(), "M_KLLBXX", "int_tb_kllb_ylsx"); //数量上限
  470. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_tb_kllb_sxys.ToString(), "M_KLLBXX", "str_tb_kllb_sxys"); //显示元素
  471. for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys.Count; i++) //显示元素列表
  472. {
  473. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys[i].ToString(), "M_KLLBXX", "list_str_tb_lllb_sxys", "YS" + i.ToString());
  474. }
  475. //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取
  476. for (int i = m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys.Count; i < 1000; i++)
  477. {
  478. string strxh = i.ToString();
  479. if (null != xmlutil.Read("M_KLLBXX", "list_str_tb_lllb_sxys", "YS" + strxh))
  480. {
  481. //删除该节点
  482. xmlutil.RemoveNode("M_KLLBXX", "list_str_tb_lllb_sxys", "YS" + strxh);
  483. }
  484. else
  485. {
  486. break;
  487. }
  488. }
  489. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_ystx.ToString(), "M_KLLBXX", "b_ck_kllb_ystx"); //原始图像
  490. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fdtx.ToString(), "M_KLLBXX", "b_ck_kllb_fdtx"); //放大图像
  491. xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_npxx.ToString(), "M_KLLBXX", "b_ck_kllb_npxx"); //能谱图像
  492. }
  493. }
  494. private void SaveTemplateParameters()
  495. {
  496. //首页
  497. m_OTSReport_Export.m_mbszclass.M_SY.str_tb_ZBT = tb_ZBT.Text;
  498. m_OTSReport_Export.m_mbszclass.M_SY.str_tb_FBT = tb_FBT.Text;
  499. m_OTSReport_Export.m_mbszclass.M_SY.str_tb_YPBH = tb_YPBH.Text;
  500. m_OTSReport_Export.m_mbszclass.M_SY.str_tb_CKBZ = tb_CKBZ.Text;
  501. m_OTSReport_Export.m_mbszclass.M_SY.b_ck_ypsm = ck_ypsm.Checked;
  502. m_OTSReport_Export.m_mbszclass.M_SY.b_ck_jggk = ck_jggk.Checked;
  503. //页眉页脚
  504. m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_ymwb = tb_ymwb.Text;
  505. m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_KHH = tb_khh.Text;
  506. m_OTSReport_Export.m_mbszclass.M_YMYJ.b_ck_ym = ck_ym.Checked;
  507. m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_yjwb = tb_yjwb.Text;
  508. //颗粒分析结果
  509. m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_ck_klcc_xsmk = ck_klcc_xsmk.Checked;
  510. m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_jsfs = cb_klcc_jsfs.Text;//计算方式
  511. m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_jsfs = cb_klcc_jsfs.SelectedIndex;
  512. m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_ljb = cb_klcc_ljb.Text;//粒级表
  513. m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_ljb = cb_klcc_ljb.SelectedIndex;
  514. m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_klfw = cb_klcc_klfw.Text;//颗粒范围
  515. m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_klfw = cb_klcc_klfw.SelectedIndex;
  516. m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_cb_jzwfl_xsmk = cb_jzwfl_xsmk.Checked;
  517. m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_jzwfl_xstx = cb_jzwfl_xstx.Text;//选择图像
  518. m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_xstx = cb_jzwfl_xstx.SelectedIndex;
  519. //m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_jzwfl_jsfs = cb_jzwfl_jsfs.Text;//计算方式
  520. //m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_jsfs = cb_jzwfl_jsfs.SelectedIndex;
  521. m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_jzwfl_ljb = cb_jzwfl_ljb.Text;//粒级表
  522. m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_ljb = cb_jzwfl_ljb.SelectedIndex;
  523. m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_jzwfl_klfw = cb_jzwfl_klfw.Text;//颗粒范围
  524. m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_klfw = cb_jzwfl_klfw.SelectedIndex;
  525. //元素分析结果
  526. m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_ysfx_xsmk = ck_ysfx_xsmk.Checked;
  527. //m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_cb_yxfx_jsfs = cb_yxfx_jsfs.Text;//计算方式
  528. //m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yxfx_jsfs = cb_yxfx_jsfs.SelectedIndex;
  529. m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_cb_ysfx_klfw = cb_ysfx_klfw.Text;//颗粒范围
  530. m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_ysfx_klfw = cb_ysfx_klfw.SelectedIndex;
  531. m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_ysfx_xsys = tb_ysfx_xsys.Text;//显示元素
  532. m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_yscf_xsmk = ck_yscf_xsmk.Checked;
  533. m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_cb_yscf_xstx = cb_yscf_xstx.Text;//显示图形
  534. m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_xstx = cb_yscf_xstx.SelectedIndex;
  535. //m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_cb_yscf_jsfs = cb_yscf_jsfs.Text;//计算方式
  536. //m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_jsfs = cb_yscf_jsfs.SelectedIndex;
  537. m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_cb_yscf_klfw = cb_yscf_klfw.Text;//颗粒范围
  538. m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_klfw = cb_yscf_klfw.SelectedIndex;
  539. m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_yscf_ysxx = tb_yscf_ysxx.Text;//显示元素
  540. //三元相图
  541. m_OTSReport_Export.m_mbszclass.M_SYXT.b_ck_syxt_xsmk = ck_syxt_xsmk.Checked;
  542. //m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_jsfs = cb_syxt_jsfs.Text;//计算方式
  543. //m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_jsfs = cb_syxt_jsfs.SelectedIndex;
  544. m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_klfw = cb_syxt_klfw.Text;//颗粒范围
  545. m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_klfw = cb_syxt_klfw.SelectedIndex;
  546. m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_ljb = cb_syxt_ljb.Text;//粒级表
  547. m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_ljb = cb_syxt_ljb.SelectedIndex;
  548. m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_mhxssl = cb_syxt_mhxssl.Text;//每行显示数量
  549. //获取勾选的项
  550. m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Clear();
  551. m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Clear();
  552. for (int i = 0; i < lbv_syxt_mblb.CheckedItems.Count; i++)
  553. {
  554. string str = lbv_syxt_mblb.CheckedItems[i].Text;
  555. m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Add(str);
  556. //同时保存三元素相图的索引
  557. for (int j = 0; j < lbv_syxt_mblb.Items.Count; j++)
  558. {
  559. if (str == lbv_syxt_mblb.Items[j].Text)
  560. m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Add(j);
  561. }
  562. }
  563. //颗粒列表信息
  564. m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_xsmk = ck_kllb_xsmk.Checked;
  565. //m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_jsfs = cb_kllb_jsfs.Text;//计算方式
  566. //m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_jsfs = cb_kllb_jsfs.SelectedIndex;
  567. m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_klfw = cb_kllb_klfw.Text;//颗粒范围
  568. m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_klfw = cb_kllb_klfw.SelectedIndex;
  569. if (ck_kllb_xsmk.Checked)
  570. {
  571. m_OTSReport_Export.m_mbszclass.M_KLLBXX.int_tb_kllb_ylsx = Convert.ToInt32(tb_kllb_ylsx.Text.Trim());//数量上限
  572. }
  573. else
  574. {
  575. m_OTSReport_Export.m_mbszclass.M_KLLBXX.int_tb_kllb_ylsx = Convert.ToInt32("1");
  576. }
  577. m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_tb_kllb_sxys = tb_kllb_sxys.Text;//显示元素
  578. m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_ystx = ck_kllb_ystx.Checked;//原始图像
  579. m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fdtx = ck_kllb_fdtx.Checked;//放大图像
  580. m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_npxx = ck_kllb_npxx.Checked;//能谱图像
  581. }
  582. private void LoadControls()
  583. {
  584. //首页
  585. tb_ZBT.Text = m_OTSReport_Export.m_mbszclass.M_SY.str_tb_ZBT;
  586. tb_FBT.Text = m_OTSReport_Export.m_mbszclass.M_SY.str_tb_FBT;
  587. tb_YPBH.Text = m_OTSReport_Export.m_mbszclass.M_SY.str_tb_YPBH;
  588. tb_CKBZ.Text = m_OTSReport_Export.m_mbszclass.M_SY.str_tb_CKBZ;
  589. ck_ypsm.Checked = m_OTSReport_Export.m_mbszclass.M_SY.b_ck_ypsm;
  590. ck_jggk.Checked = m_OTSReport_Export.m_mbszclass.M_SY.b_ck_jggk;
  591. //页眉页脚
  592. tb_ymwb.Text = m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_ymwb;
  593. tb_khh.Text = m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_KHH;
  594. ck_ym.Checked = m_OTSReport_Export.m_mbszclass.M_YMYJ.b_ck_ym;
  595. tb_yjwb.Text = m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_yjwb;
  596. //颗粒分析结果
  597. ck_klcc_xsmk.Checked = m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_ck_klcc_xsmk;
  598. //cb_klcc_ljb.Text = m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_jsfs;//计算方式
  599. cb_klcc_jsfs.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_jsfs;
  600. //cb_klcc_ljb.Text = m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_ljb;//粒级表
  601. cb_klcc_ljb.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_ljb;
  602. //cb_klcc_klfw.Text = m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_klfw;//颗粒范围
  603. cb_klcc_klfw.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_klfw;
  604. cb_jzwfl_xsmk.Checked = m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_cb_jzwfl_xsmk;
  605. //cb_jzwfl_xstx.Text = m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_jzwfl_xstx;//选择图像
  606. cb_jzwfl_xstx.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_xstx;
  607. //cb_jzwfl_jsfs.Text = m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_jzwfl_jsfs;//计算方式
  608. //cb_jzwfl_jsfs.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_jsfs;
  609. //cb_jzwfl_ljb.Text = m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_jzwfl_ljb;//粒级表
  610. cb_jzwfl_ljb.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_ljb;
  611. //cb_jzwfl_klfw.Text = m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_jzwfl_klfw;//颗粒范围
  612. cb_jzwfl_klfw.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_klfw;
  613. //元素分析结果
  614. ck_ysfx_xsmk.Checked = m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_ysfx_xsmk;
  615. //cb_yxfx_jsfs.Text = m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_cb_yxfx_jsfs;//计算方式
  616. //cb_yxfx_jsfs.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yxfx_jsfs;
  617. //cb_ysfx_klfw.Text = m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_cb_ysfx_klfw;//颗粒范围
  618. cb_ysfx_klfw.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_ysfx_klfw;
  619. tb_ysfx_xsys.Text = m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_ysfx_xsys;//显示元素
  620. ck_yscf_xsmk.Checked = m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_yscf_xsmk;
  621. //cb_yscf_xstx.Text = m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_cb_yscf_xstx;//显示图形
  622. cb_yscf_xstx.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_xstx;
  623. //cb_yscf_jsfs.Text = m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_cb_yscf_jsfs;//计算方式
  624. //cb_yscf_jsfs.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_jsfs;
  625. //cb_yscf_klfw.Text = m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_cb_yscf_klfw;//颗粒范围
  626. cb_yscf_klfw.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_klfw;
  627. tb_yscf_ysxx.Text = m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_yscf_ysxx;//显示元素
  628. //三元相图
  629. ck_syxt_xsmk.Checked = m_OTSReport_Export.m_mbszclass.M_SYXT.b_ck_syxt_xsmk;
  630. //cb_syxt_jsfs.Text = m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_jsfs;//计算方式
  631. //cb_syxt_jsfs.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_jsfs;
  632. //cb_syxt_klfw.Text = m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_klfw;//颗粒范围
  633. cb_syxt_klfw.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_klfw;
  634. cb_syxt_ljb.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_ljb;//粒级表
  635. cb_syxt_mhxssl.Text = m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_mhxssl;// 每行显示数量
  636. //获取勾选的项
  637. for (int i = 0; i < lbv_syxt_mblb.Items.Count; i++)
  638. {
  639. for (int j = 0; j < m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count; j++)
  640. {
  641. if (lbv_syxt_mblb.Items[i].Text == m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb[j])
  642. {
  643. //匹配到了
  644. lbv_syxt_mblb.Items[i].Checked = true;
  645. }
  646. }
  647. }
  648. //颗粒列表信息
  649. ck_kllb_xsmk.Checked = m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_xsmk;
  650. //cb_kllb_jsfs.Text = m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_jsfs;//计算方式
  651. //cb_kllb_jsfs.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_jsfs;
  652. //cb_kllb_klfw.Text = m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_klfw;//颗粒范围
  653. cb_kllb_klfw.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_klfw;
  654. tb_kllb_ylsx.Text = m_OTSReport_Export.m_mbszclass.M_KLLBXX.int_tb_kllb_ylsx.ToString();//数量上限
  655. tb_kllb_sxys.Text = m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_tb_kllb_sxys;//显示元素
  656. ck_kllb_ystx.Checked = m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_ystx;//原始图像
  657. ck_kllb_fdtx.Checked = m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fdtx;//放大图像
  658. ck_kllb_npxx.Checked = m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_npxx;//能谱图像
  659. }
  660. /// <summary>
  661. ///绑定下拉框,指定绑定的位置
  662. /// </summary>
  663. private void BindComboBox(ComboBox cbo, OTS_REPORT_PROP_GRID_ITEMS in_enum)
  664. {
  665. cbo.Items.Clear();
  666. List<string> list_str = new List<string>();
  667. switch (in_enum)
  668. {
  669. case OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE://计算方式
  670. list_str = m_OTSReport_Export.m_ReportApp.m_rstDataMgr.GetSizeCalMethodTypeList();
  671. break;
  672. case OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE://粒级表
  673. list_str = m_OTSReport_Export.m_ReportApp.m_rstDataMgr.GetPartSizeFileList();
  674. break;
  675. case OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE://数据类型,全部颗粒,分析颗粒
  676. list_str = m_OTSReport_Export.m_ReportApp.m_rstDataMgr.ParticleRange();
  677. break;
  678. case OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE://三元相图模板
  679. list_str = m_OTSReport_Export.m_ReportApp.m_rstDataMgr.GetTriTemplateNameList();
  680. break;
  681. }
  682. for (int i = 0; i < list_str.Count; i++)
  683. {
  684. cbo.Items.Add(list_str[i]);
  685. }
  686. if (cbo.Items.Count > 0)
  687. cbo.SelectedIndex = 0;
  688. }
  689. /// <summary>
  690. /// 对选择的元素进行显示及选择的封装方法
  691. /// </summary>
  692. /// <param name="in_tb"></param>
  693. private void SetPeriodicTableControl(TextBox in_tb, List<string> in_list_str)
  694. {
  695. in_list_str.Clear();
  696. //打开编辑元素列表窗体
  697. OTSPeriodicTableForm_Small opts = new OTSPeriodicTableForm_Small();
  698. //获取需要显示的元素列表,并转换成元素周期表窗体可接受的格式,传入----------------------
  699. string str_xsys = in_tb.Text.Trim();
  700. List<string> list_str = new List<string>();
  701. string[] strs = str_xsys.Split(',');
  702. for (int i = 0; i < strs.Length; i++)
  703. {
  704. list_str.Add(strs[i]);
  705. }
  706. //清除元素周期表中所有的记录
  707. opts.m_List_Periodic.Clear();
  708. //将该分类下的元素添加到元素周期表窗体的List_periodic中
  709. for (int i = 0; i < strs.Length; i++)
  710. {
  711. string str_ysm = strs[i];
  712. Periodic ls_periodic = new Periodic();
  713. ls_periodic = CListPeriodic.GetPeriodicByYsm(CListPeriodic.GetListPeriodic(), str_ysm);
  714. opts.m_List_Periodic.Add(ls_periodic);
  715. }
  716. //----------------------------------------------------------------------------------------
  717. opts.ShowDialog();
  718. //先清空元素
  719. str_xsys = "";
  720. //然后再将选择的元素,组合起来,返回显示到该窗体上
  721. if (opts.m_List_Periodic.Count > 0)
  722. {
  723. for (int i = 0; i < opts.m_List_Periodic.Count; i++)
  724. {
  725. if (str_xsys == "")
  726. {
  727. str_xsys = opts.m_List_Periodic[i].FH;
  728. }
  729. else
  730. {
  731. str_xsys = str_xsys + "," + opts.m_List_Periodic[i].FH;
  732. }
  733. //同时将元素保存到字符串列表中
  734. in_list_str.Add(opts.m_List_Periodic[i].FH);
  735. }
  736. }
  737. //再对选择的元素进行显示
  738. in_tb.Text = str_xsys;
  739. }
  740. /// <summary>
  741. /// 刷新左侧预览图片的顺序
  742. /// </summary>
  743. private void LocationPicture()
  744. {
  745. panel2.VerticalScroll.Value = 0;
  746. int top, left;
  747. top = 0;
  748. left = 3;
  749. PictureBox[] pictures = new PictureBox[] { pictureBox1, pictureBox2, pictureBox3, pictureBox4, pictureBox5, pictureBox6, pictureBox8 };
  750. for (int i = 1; i < 10; i++)
  751. {
  752. if (i == 1)
  753. {
  754. pictureBox1.Visible = true;
  755. pictures[i - 1].Top = 3;
  756. pictures[i - 1].Left = left;
  757. pictures[i - 1].Width = 673;
  758. pictures[i - 1].Height = 954;
  759. }
  760. else
  761. if (i == 2)
  762. {
  763. if (ck_klcc_xsmk.Checked)
  764. {
  765. pictureBox2.Visible = true;
  766. top = top + 950;
  767. pictures[i - 1].Top = top;
  768. pictures[i - 1].Left = left;
  769. pictures[i - 1].Width = 673;
  770. pictures[i - 1].Height = 954;
  771. }
  772. else
  773. {
  774. pictureBox2.Visible = false;
  775. }
  776. }
  777. else if (i == 3)
  778. {
  779. if (cb_jzwfl_xsmk.Checked)
  780. {
  781. pictureBox3.Visible = true;
  782. top = top + 950;
  783. pictures[i - 1].Top = top;
  784. pictures[i - 1].Left = left;
  785. pictures[i - 1].Width = 673;
  786. pictures[i - 1].Height = 954;
  787. }
  788. else
  789. {
  790. pictureBox3.Visible = false;
  791. }
  792. }
  793. else if (i == 4)
  794. {
  795. if (ck_ysfx_xsmk.Checked)
  796. {
  797. pictureBox4.Visible = true;
  798. top = top + 950;
  799. pictures[i - 1].Top = top;
  800. pictures[i - 1].Left = left;
  801. pictures[i - 1].Width = 673;
  802. pictures[i - 1].Height = 954;
  803. }
  804. else
  805. {
  806. pictureBox4.Visible = false;
  807. }
  808. }
  809. else if (i == 5)
  810. {
  811. if (ck_yscf_xsmk.Checked)
  812. {
  813. pictureBox5.Visible = true;
  814. top = top + 950;
  815. pictures[i - 1].Top = top;
  816. pictures[i - 1].Left = left;
  817. pictures[i - 1].Width = 673;
  818. pictures[i - 1].Height = 954;
  819. }
  820. else
  821. {
  822. pictureBox5.Visible = false;
  823. }
  824. }
  825. else if (i == 6)
  826. {
  827. if (ck_syxt_xsmk.Checked)
  828. {
  829. pictureBox6.Visible = true;
  830. top = top + 950;
  831. pictures[i - 1].Top = top;
  832. pictures[i - 1].Left = left;
  833. pictures[i - 1].Width = 673;
  834. pictures[i - 1].Height = 954;
  835. }
  836. else
  837. {
  838. pictureBox6.Visible = false;
  839. }
  840. }
  841. else if (i == 7)
  842. {
  843. if (ck_kllb_xsmk.Checked)
  844. {
  845. pictureBox8.Visible = true;
  846. top = top + 950;
  847. pictures[i - 1].Top = top;
  848. pictures[i - 1].Left = left;
  849. pictures[i - 1].Width = 673;
  850. pictures[i - 1].Height = 954;
  851. }
  852. else
  853. {
  854. pictureBox8.Visible = false;
  855. }
  856. }
  857. }
  858. }
  859. /// <summary>
  860. /// 选择显示颗粒列表中的图片
  861. /// </summary>
  862. private void KLLB()
  863. {
  864. if (ck_kllb_xsmk.Checked)
  865. {
  866. pictureBox8.Visible = true;
  867. if (ck_kllb_ystx.Checked == true && ck_kllb_npxx.Checked == true && ck_kllb_fdtx.Checked == true)
  868. {
  869. this.pictureBox8.Image = Properties.Resources.颗粒列表;
  870. }
  871. else if (ck_kllb_ystx.Checked == true && ck_kllb_fdtx.Checked == true && ck_kllb_npxx.Checked == false)
  872. {
  873. this.pictureBox8.Image = Properties.Resources.颗粒列表不显示能谱图;
  874. }
  875. else if (ck_kllb_ystx.Checked == true && ck_kllb_fdtx.Checked == false && ck_kllb_npxx.Checked == false)
  876. {
  877. this.pictureBox8.Image = Properties.Resources.颗粒列表不显示放大图不显示能谱显示原图;
  878. }
  879. else if (ck_kllb_ystx.Checked == false && ck_kllb_fdtx.Checked == false && ck_kllb_npxx.Checked == true)
  880. {
  881. this.pictureBox8.Image = Properties.Resources.颗粒列表不显示原图和放大图显示能谱图;
  882. }
  883. else if (ck_kllb_ystx.Checked == false && ck_kllb_fdtx.Checked == false && ck_kllb_npxx.Checked == false)
  884. {
  885. this.pictureBox8.Image = Properties.Resources.颗粒列表显示无;
  886. }
  887. else if (ck_kllb_ystx.Checked == false && ck_kllb_fdtx.Checked == true && ck_kllb_npxx.Checked == false)
  888. {
  889. this.pictureBox8.Image = Properties.Resources.颗粒列表不显示原图不显示能谱显示放大图;
  890. }
  891. else if (ck_kllb_ystx.Checked == false && ck_kllb_fdtx.Checked == true && ck_kllb_npxx.Checked == true)
  892. {
  893. this.pictureBox8.Image = Properties.Resources.颗粒列表不显示原图;
  894. }
  895. else if (ck_kllb_ystx.Checked == true && ck_kllb_fdtx.Checked == false && ck_kllb_npxx.Checked == true)
  896. {
  897. this.pictureBox8.Image = Properties.Resources.颗粒列表不显示放大图不显示能谱显示原图;
  898. }
  899. }
  900. else
  901. {
  902. //this.pictureBox8.Image = Properties.Resources.报表首页空白;
  903. pictureBox8.Visible = false;
  904. }
  905. }
  906. #endregion
  907. #region 相关控件事件
  908. private void button6_Click(object sender, EventArgs e)
  909. {
  910. if (VerifyControlValue() == false)
  911. return;
  912. SaveTemplateParameters();
  913. this.DialogResult = DialogResult.Yes;
  914. //保存到上次路径文件
  915. SaveFileToXml();
  916. this.Close();
  917. }
  918. private void ck_klcc_xsmk_CheckedChanged(object sender, EventArgs e)
  919. {
  920. if (ck_klcc_xsmk.Checked)
  921. {
  922. pictureBox2.Visible = true;
  923. this.pictureBox2.Image = Properties.Resources.颗粒尺寸分析结果;
  924. }
  925. else
  926. {
  927. pictureBox2.Visible = false;
  928. }
  929. LocationPicture();
  930. }
  931. private void cb_jzwfl_xsmk_CheckedChanged(object sender, EventArgs e)
  932. {
  933. if (cb_jzwfl_xsmk.Checked)
  934. {
  935. pictureBox3.Visible = true;
  936. this.pictureBox3.Image = Properties.Resources.颗粒成分图;
  937. }
  938. else
  939. {
  940. pictureBox3.Visible = false;
  941. }
  942. LocationPicture();
  943. }
  944. private void ck_ysfx_xsmk_CheckedChanged(object sender, EventArgs e)
  945. {
  946. if (ck_ysfx_xsmk.Checked)
  947. {
  948. pictureBox4.Visible = true;
  949. this.pictureBox4.Image = Properties.Resources.元素分析表;
  950. }
  951. else
  952. {
  953. pictureBox4.Visible = false;
  954. }
  955. LocationPicture();
  956. }
  957. private void ck_yscf_xsmk_CheckedChanged(object sender, EventArgs e)
  958. {
  959. if (ck_yscf_xsmk.Checked)
  960. {
  961. pictureBox5.Visible = true;
  962. this.pictureBox5.Image = Properties.Resources.元素成分图;
  963. }
  964. else
  965. {
  966. pictureBox5.Visible = false;
  967. }
  968. LocationPicture();
  969. }
  970. private void ck_syxt_xsmk_CheckedChanged(object sender, EventArgs e)
  971. {
  972. if (ck_syxt_xsmk.Checked)
  973. {
  974. pictureBox6.Visible = true;
  975. if (cb_syxt_mhxssl.Text == "2")
  976. {
  977. this.pictureBox6.Image = Properties.Resources.三元相图;
  978. }
  979. else
  980. {
  981. this.pictureBox6.Image = Properties.Resources.三元相图一排三个;
  982. }
  983. }
  984. else
  985. {
  986. pictureBox6.Visible = false;
  987. }
  988. LocationPicture();
  989. }
  990. private void cb_syxt_mhxssl_SelectedIndexChanged(object sender, EventArgs e)
  991. {
  992. if (cb_syxt_mhxssl.Text == "2")
  993. {
  994. this.pictureBox6.Image = Properties.Resources.三元相图;
  995. }
  996. else
  997. {
  998. this.pictureBox6.Image = Properties.Resources.三元相图一排三个;
  999. }
  1000. }
  1001. private void ck_kllb_xsmk_CheckedChanged(object sender, EventArgs e)
  1002. {
  1003. KLLB();
  1004. LocationPicture();
  1005. }
  1006. private void ck_kllb_ystx_CheckedChanged(object sender, EventArgs e)
  1007. {
  1008. KLLB();
  1009. }
  1010. private void ck_kllb_fdtx_CheckedChanged(object sender, EventArgs e)
  1011. {
  1012. KLLB();
  1013. }
  1014. private void ck_kllb_npxx_CheckedChanged(object sender, EventArgs e)
  1015. {
  1016. KLLB();
  1017. }
  1018. #endregion
  1019. }
  1020. }