using OTSIncAReportApp.OTSSampleReportInfo; using OTSIncAReportApp.SysMgrTools; using OTSRptPeriodicTable; using System; using System.Collections.Generic; using System.Windows.Forms; namespace OTSIncAReportApp.OTSTemplateDesigner { public partial class OTSReport_TemplateDesignerRM : Form { #region 全局变量 public OTSReport_Export m_OTSReport_Export; System.Collections.Hashtable table; #endregion #region 构造函数及窗体加载 public OTSReport_TemplateDesignerRM(OTSReport_Export in_otsreport_export) { InitializeComponent(); m_OTSReport_Export = in_otsreport_export; #region 国际化语言 Language lan = new Language(this); table = lan.GetNameTable(this.Name); #endregion } private void OTSReport_TemplateDesignerRM_Load(object sender, EventArgs e) { //绑定各下拉框的值 BindControl(); //读取默认值 LoadControls(); } /// /// 为各下拉控件绑定值 /// private void BindControl() { //选择颗粒范围 cb_ParticleRange.Items.Add("全部颗粒"); cb_ParticleRange.Items.Add("选择颗粒"); #region 元素选择 string[] PeriodicTable = { "H", "He", "Li", "Be", "B", "C", "N", "O", "F", "Ne", "Na", "Mg", "Al", "Si", "P", "S", "Cl", "Ar", "K", "Ca", "Sc", "Ti", "V", "Cr", "Mn", "Fe", "Co", "Ni", "Cu", "Zn", "Ga", "Ge", "As", "Se", "Br", "Kr", "Rb", "Sr", "Y", "Zr", "Nb", "Mo", "Tc", "Ru", "Rh", "Pd", "Ag", "Cd", "In", "Sn", "Sb", "Te", "I", "Xe", "Cs", "Ba", "La", "Ce", "Pr", "Nd", "Pm", "Sm", "Eu", "Gd", "Tb", "Dy", "Ho", "Er", "Tm", "Yb", "Lu", "Hf", "Ta", "W", "Re", "Os", "Ir", "Pt", "Au", "Hq", "TI", "Pb", "Bi", "Po", "At", "Rn", "Fr", "Ra", "Ac", "Th", "Pa", "U", "Np", "Pu", "Am", "Cm", "Bk", "Cf", "Es", "Fm", "Mc", "No", "Lr", "Rf", "Db", "Sg", "Bh", "Hs", "Mt", "Ds", "Rg", "Unb" }; comboBox_PeriodicTable.Items.AddRange(PeriodicTable); AutoCompleteStringCollection sc = new AutoCompleteStringCollection(); sc.AddRange(PeriodicTable); this.comboBox_PeriodicTable.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.Suggest; this.comboBox_PeriodicTable.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.CustomSource; this.comboBox_PeriodicTable.AutoCompleteCustomSource = sc; #endregion #region 颗粒尺寸分析结果 //计算方式 //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); BindComboBox(cb_klcc_jsfs, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE); //粒级表 //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); BindComboBox(cb_klcc_ljb, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); //颗粒范围 //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); //BindComboBox(cb_klcc_klfw, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE); #endregion #region 夹杂物分类图 //显示图形 //cb_jzwfl_xstx.Items.Add(table["report1"].ToString()); //cb_jzwfl_xstx.Items.Add(table["report2"].ToString()); //cb_jzwfl_xstx.Items.Add(table["report3"].ToString()); //cb_jzwfl_xstx.Items.Add(table["report4"].ToString()); //cb_jzwfl_xstx.Items.Add(table["report5"].ToString()); //cb_jzwfl_xstx.SelectedIndex = 0; //计算方式 //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); //BindComboBox(cb_jzwfl_jsfs, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE); //粒级表 //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); //BindComboBox(cb_jzwfl_ljb, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); //颗粒范围 //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); //BindComboBox(cb_jzwfl_klfw, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE); #endregion #region 元素分析表 //计算方式 //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); //BindComboBox(cb_yxfx_jsfs, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE); //颗粒范围 //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); //BindComboBox(cb_ysfx_klfw, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE); #endregion #region 三元相图 //计算方式 //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); //BindComboBox(cb_syxt_jsfs, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE); //颗粒范围 //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); //BindComboBox(cb_syxt_klfw, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE); //粒级表 //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); BindComboBox(cb_syxt_ljb, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); //每行显示数量 cb_syxt_mhxssl.Items.Add("2"); cb_syxt_mhxssl.Items.Add("3"); cb_syxt_mhxssl.SelectedIndex = 0; //三元相图模板s ComboBox lscb = new ComboBox(); //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); BindComboBox(lscb, OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE); for (int i = 0; i < lscb.Items.Count; i++) { lbv_syxt_mblb.Items.Add(lscb.Items[i].ToString()); } #endregion #region 颗粒列表 //排序方式 BindComboBox(comboBox_p1, OTS_REPORT_PROP_GRID_ITEMS.PARTICE_LIST); BindComboBox(comboBox_p2, OTS_REPORT_PROP_GRID_ITEMS.PARTICE_LIST); BindComboBox(comboBox_p3, OTS_REPORT_PROP_GRID_ITEMS.PARTICE_LIST); BindComboBox(cb_FrameChart_p1, OTS_REPORT_PROP_GRID_ITEMS.PARTICE_LIST); BindComboBox(cb_FrameChart_p2, OTS_REPORT_PROP_GRID_ITEMS.PARTICE_LIST); //BindComboBox(cb_FrameChart_p3, OTS_REPORT_PROP_GRID_ITEMS.PARTICE_LIST); #endregion } /// /// 验证各控件输入的值 /// private bool VerifyControlValue() { int selectnumber = 0; for (int i = 0; i < lbv_syxt_mblb.CheckedItems.Count; i++) { if (lbv_syxt_mblb.CheckedItems[i].Checked == true) selectnumber++; } //if (cb_syxt_mhxssl.Text == "2") //{ // if (selectnumber % 2 != 0) // { // //选择的不是2的整倍数,请重新选择 // MessageBox.Show(table["report10"].ToString(), table["report12"].ToString(), MessageBoxButtons.OK, MessageBoxIcon.Information); // return false; // } //} //if (cb_syxt_mhxssl.Text == "3") //{ // if (selectnumber % 3 != 0) // { // //选择的不是2的整倍数,请重新选择 // MessageBox.Show(table["report11"].ToString(), table["report12"].ToString(), MessageBoxButtons.OK, MessageBoxIcon.Information); // return false; // } //} return true; } #endregion #region 按键事件 private void button2_Click(object sender, EventArgs e) { this.Close(); } private void button1_Click(object sender, EventArgs e) { if ( SaveTemplateParametersToXml()) { SaveTemplateParameters(); } } private void button4_Click(object sender, EventArgs e) { //元素分析表,显示元素 SetPeriodicTableControl(tb_ysfx_xsys, m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys); } #endregion #region 另存到文件 private bool SaveTemplateParametersToXml() { string path = string.Empty; SaveFileDialog save = new SaveFileDialog(); save.Filter = "XML File|*.xml"; save.InitialDirectory = @System.Windows.Forms.Application.StartupPath + "\\Config\\ProData"; if (save.ShowDialog() != DialogResult.OK) { return false; } path = save.FileName;//赋值目录 if (path != string.Empty) { m_OTSReport_Export.m_mbszclass.M_DZ.route = path; OTSIncAReportApp.Controls.XmlConfigUtil xmlutil = new OTSIncAReportApp.Controls.XmlConfigUtil(path); //首页 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_ZBT.ToString(), "M_SY", "str_tb_ZBT"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_FBT.ToString(), "M_SY", "str_tb_FBT"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_YPBH.ToString(), "M_SY", "str_tb_YPBH"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_CKBZ.ToString(), "M_SY", "str_tb_CKBZ"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.b_ck_ypsm.ToString(), "M_SY", "b_ck_ypsm"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.b_ck_jggk.ToString(), "M_SY", "b_ck_jggk"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_bz.ToString(), "M_SY", "str_bz"); //选择颗粒范围(全部颗粒,选择颗粒) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_xzkl.ToString(), "M_SY", "str_xzkl"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.int_xzkl.ToString(), "M_SY", "int_xzkl"); //页眉页脚 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_ymwb.ToString(), "M_YMYJ", "str_tb_ymwb"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_KHH.ToString(), "M_YMYJ", "str_tb_KHH"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.b_ck_ym.ToString(), "M_YMYJ", "b_ck_ym"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_yjwb.ToString(), "M_YMYJ", "str_tb_yjwb"); //颗粒分析结果 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_ck_klcc_xsmk.ToString(), "M_KLFXJG", "b_ck_klcc_xsmk");//是否显示模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_jsfs.ToString(), "M_KLFXJG", "index_cb_klcc_jsfs");//计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_jsfs.ToString(), "M_KLFXJG", "str_cb_klcc_jsfs");//计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_ljb.ToString(), "M_KLFXJG", "index_cb_klcc_ljb");//粒级表 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_klfw.ToString(), "M_KLFXJG", "index_cb_klcc_klfw");//颗粒范围 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_cb_jzwfl_xsmk.ToString(), "M_KLFXJG", "b_cb_jzwfl_xsmk");//是否显示该模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_xstx.ToString(), "M_KLFXJG", "index_cb_jzwfl_xstx");//选择图像 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_jsfs.ToString(), "M_KLFXJG", "index_cb_jzwfl_jsfs");//计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_ljb.ToString(), "M_KLFXJG", "index_cb_jzwfl_ljb");//粒级表 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_klfw.ToString(), "M_KLFXJG", "index_cb_jzwfl_klfw");//颗粒范围 //元素分析结果 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_ysfx_xsmk.ToString(), "M_YSFXJG", "b_ck_ysfx_xsmk"); //是否显示模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yxfx_jsfs.ToString(), "M_YSFXJG", "index_cb_yxfx_jsfs"); //计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_ysfx_klfw.ToString(), "M_YSFXJG", "index_cb_ysfx_klfw"); //颗粒范围 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_ysfx_xsys.ToString(), "M_YSFXJG", "str_tb_ysfx_xsys"); //显示元素 for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Count; i++) //元素列表 { 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()); } //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取 // RemoveMBSZClassNode("M_YSFXJG", "list_str_tb_ysfx_xsys", "YS", m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Count); for (int i = m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Count; i < 1000; i++) { string strxh = i.ToString(); if (null != xmlutil.Read("M_YSFXJG", "list_str_tb_ysfx_xsys", "YS" + strxh)) { //删除该节点 xmlutil.RemoveNode("M_YSFXJG", "list_str_tb_ysfx_xsys", "YS" + strxh); } else { break; } } xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_yscf_xsmk.ToString(), "M_YSFXJG", "b_ck_yscf_xsmk"); //是否显示模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_xstx.ToString(), "M_YSFXJG", "index_cb_yscf_xstx"); //显示图形 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_jsfs.ToString(), "M_YSFXJG", "index_cb_yscf_jsfs"); //计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_klfw.ToString(), "M_YSFXJG", "index_cb_yscf_klfw"); //颗粒范围 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_yscf_ysxx.ToString(), "M_YSFXJG", "str_tb_yscf_ysxx"); //显示元素 for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx.Count; i++) //元素列表 { 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()); } //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取 // RemoveMBSZClassNode("M_YSFXJG", "list_str_tb_yscf_ysxx", "YS", m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx.Count); for (int i = m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx.Count; i < 1000; i++) { string strxh = i.ToString(); if (null != xmlutil.Read("M_YSFXJG", "list_str_tb_yscf_ysxx", "YS" + strxh)) { //删除该节点 xmlutil.RemoveNode("M_YSFXJG", "list_str_tb_yscf_ysxx", "YS" + strxh); } else { break; } } //三元相图 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.b_ck_syxt_xsmk.ToString(), "M_SYXT", "b_ck_syxt_xsmk"); //是否显示模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_jsfs.ToString(), "M_SYXT", "index_cb_syxt_jsfs"); //计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_klfw.ToString(), "M_SYXT", "index_cb_syxt_klfw"); //颗粒范围 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_mhxssl.ToString(), "M_SYXT", "str_cb_syxt_mhxssl"); //每行显示数量 for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count; i++) //三元相图模板 list 文本 { xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb[i].ToString(), "M_SYXT", "list_lbv_syxt_mblb", "MB" + i.ToString()); } //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取 //RemoveMBSZClassNode("M_SYXT", "list_lbv_syxt_mblb", "MB", m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count); for (int i = m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count; i < 1000; i++) { string strxh = i.ToString(); if (null != xmlutil.Read("M_SYXT", "list_lbv_syxt_mblb", "MB" + strxh)) { //删除该节点 xmlutil.RemoveNode("M_SYXT", "list_lbv_syxt_mblb", "MB" + strxh); } else { break; } } for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count; i++) //三元相图模板 list 索引 { 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()); } //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取 // RemoveMBSZClassNode("M_SYXT", "list_lbv_syxt_mblb_index", "MBIndex", m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count); for (int i = m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count; i < 1000; i++) { string strxh = i.ToString(); if (null != xmlutil.Read("M_SYXT", "list_lbv_syxt_mblb", "MBIndex" + strxh)) { //删除该节点 xmlutil.RemoveNode("M_SYXT", "list_lbv_syxt_mblb", "MBIndex" + strxh); } else { break; } } //颗粒列表信息 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_xsmk.ToString(), "M_KLLBXX", "b_ck_kllb_xsmk"); //是否显示模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fjzt.ToString(), "M_KLLBXX", "b_ck_kllb_fjzt");//附加帧图 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_jsfs.ToString(), "M_KLLBXX", "index_cb_kllb_jsfs"); //计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_klfw.ToString(), "M_KLLBXX", "index_cb_kllb_klfw"); //颗粒范围 //xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.int_tb_kllb_ylsx.ToString(), "M_KLLBXX", "int_tb_kllb_ylsx"); //数量上限 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_tb_kllb_sxys.ToString(), "M_KLLBXX", "str_tb_kllb_sxys"); //显示元素 for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys.Count; i++) //显示元素列表 { 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()); } //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取 //RemoveMBSZClassNode("M_KLLBXX", "list_str_tb_lllb_sxys", "YS", m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys.Count); for (int i = m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys.Count; i < 1000; i++) { string strxh = i.ToString(); if (null != xmlutil.Read("M_KLLBXX", "list_str_tb_lllb_sxys", "YS" + strxh)) { //删除该节点 xmlutil.RemoveNode("M_KLLBXX", "list_str_tb_lllb_sxys", "YS" + strxh); } else { break; } } xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_ystx.ToString(), "M_KLLBXX", "b_ck_kllb_ystx"); //原始图像 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fdtx.ToString(), "M_KLLBXX", "b_ck_kllb_fdtx"); //放大图像 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_npxx.ToString(), "M_KLLBXX", "b_ck_kllb_npxx"); //能谱图像 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p1.ToString(), "M_KLLBXX", "str_cb_kllb_sort_p1");//颗粒排序表列第一个可选参数(string) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p1.ToString(), "M_KLLBXX", "index_cb_kllb_sort_p1");//颗粒排序表列第一个可选参数(index) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p2.ToString(), "M_KLLBXX", "str_cb_kllb_sort_p2");//颗粒排序表列第二个可选参数(string) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p2.ToString(), "M_KLLBXX", "index_cb_kllb_sort_p2");//颗粒排序表列第二个可选参数(index) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p3.ToString(), "M_KLLBXX", "str_cb_kllb_sort_p3");//颗粒排序表列第三个可选参数(string) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p3.ToString(), "M_KLLBXX", "index_cb_kllb_sort_p3");//颗粒排序表列第三个可选参数(index) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_chartSort_p1.ToString(), "M_KLLBXX", "str_cb_kllb_chartSort_p1");//帧图表列第一个可选参数(string) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_chartSort_p1.ToString(), "M_KLLBXX", "index_cb_kllb_chartSort_p1");//帧图表列第一个可选参数(index) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_chartSort_p2.ToString(), "M_KLLBXX", "str_cb_kllb_chartSort_p2");//帧图表列第二个可选参数(string) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_chartSort_p2.ToString(), "M_KLLBXX", "index_cb_kllb_chartSort_p2");//帧图表列第二个可选参数(index) } return true; } #endregion #region 自定义方法 /// ///保存到文件 /// private void SaveFileToXml() { string path = m_OTSReport_Export.m_mbszclass.M_DZ.route; if (path != string.Empty) { OTSIncAReportApp.Controls.XmlConfigUtil xmlutil = new OTSIncAReportApp.Controls.XmlConfigUtil(path); //首页 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_ZBT.ToString(), "M_SY", "str_tb_ZBT"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_FBT.ToString(), "M_SY", "str_tb_FBT"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_YPBH.ToString(), "M_SY", "str_tb_YPBH"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_tb_CKBZ.ToString(), "M_SY", "str_tb_CKBZ"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.b_ck_ypsm.ToString(), "M_SY", "b_ck_ypsm"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.b_ck_jggk.ToString(), "M_SY", "b_ck_jggk"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_bz.ToString(), "M_SY", "str_bz"); //选择颗粒范围(全部颗粒,选择颗粒) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.str_xzkl.ToString(), "M_SY", "str_xzkl"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SY.int_xzkl.ToString(), "M_SY", "int_xzkl"); //页眉页脚 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_ymwb.ToString(), "M_YMYJ", "str_tb_ymwb"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_KHH.ToString(), "M_YMYJ", "str_tb_KHH"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.b_ck_ym.ToString(), "M_YMYJ", "b_ck_ym"); xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_yjwb.ToString(), "M_YMYJ", "str_tb_yjwb"); //颗粒分析结果 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_ck_klcc_xsmk.ToString(), "M_KLFXJG", "b_ck_klcc_xsmk");//是否显示模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_jsfs.ToString(), "M_KLFXJG", "index_cb_klcc_jsfs");//计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_jsfs.ToString(), "M_KLFXJG", "str_cb_klcc_jsfs");//计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_ljb.ToString(), "M_KLFXJG", "index_cb_klcc_ljb");//粒级表 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_klfw.ToString(), "M_KLFXJG", "index_cb_klcc_klfw");//颗粒范围 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_cb_jzwfl_xsmk.ToString(), "M_KLFXJG", "b_cb_jzwfl_xsmk");//是否显示该模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_xstx.ToString(), "M_KLFXJG", "index_cb_jzwfl_xstx");//选择图像 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_jsfs.ToString(), "M_KLFXJG", "index_cb_jzwfl_jsfs");//计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_ljb.ToString(), "M_KLFXJG", "index_cb_jzwfl_ljb");//粒级表 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_jzwfl_klfw.ToString(), "M_KLFXJG", "index_cb_jzwfl_klfw");//颗粒范围 //元素分析结果 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_ysfx_xsmk.ToString(), "M_YSFXJG", "b_ck_ysfx_xsmk"); //是否显示模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yxfx_jsfs.ToString(), "M_YSFXJG", "index_cb_yxfx_jsfs"); //计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_ysfx_klfw.ToString(), "M_YSFXJG", "index_cb_ysfx_klfw"); //颗粒范围 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_ysfx_xsys.ToString(), "M_YSFXJG", "str_tb_ysfx_xsys"); //显示元素 for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Count; i++) //元素列表 { 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()); } //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取 for (int i = m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Count; i < 1000; i++) { string strxh = i.ToString(); if (null != xmlutil.Read("M_YSFXJG", "list_str_tb_ysfx_xsys", "YS" + strxh)) { //删除该节点 xmlutil.RemoveNode("M_YSFXJG", "list_str_tb_ysfx_xsys", "YS" + strxh); } else { break; } } xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_yscf_xsmk.ToString(), "M_YSFXJG", "b_ck_yscf_xsmk"); //是否显示模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_xstx.ToString(), "M_YSFXJG", "index_cb_yscf_xstx"); //显示图形 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_jsfs.ToString(), "M_YSFXJG", "index_cb_yscf_jsfs"); //计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.index_cb_yscf_klfw.ToString(), "M_YSFXJG", "index_cb_yscf_klfw"); //颗粒范围 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_yscf_ysxx.ToString(), "M_YSFXJG", "str_tb_yscf_ysxx"); //显示元素 for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx.Count; i++) //元素列表 { 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()); } //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取 for (int i = m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_yscf_ysxx.Count; i < 1000; i++) { string strxh = i.ToString(); if (null != xmlutil.Read("M_YSFXJG", "list_str_tb_yscf_ysxx", "YS" + strxh)) { //删除该节点 xmlutil.RemoveNode("M_YSFXJG", "list_str_tb_yscf_ysxx", "YS" + strxh); } else { break; } } //三元相图 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.b_ck_syxt_xsmk.ToString(), "M_SYXT", "b_ck_syxt_xsmk"); //是否显示模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_jsfs.ToString(), "M_SYXT", "index_cb_syxt_jsfs"); //计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_klfw.ToString(), "M_SYXT", "index_cb_syxt_klfw"); //颗粒范围 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_mhxssl.ToString(), "M_SYXT", "str_cb_syxt_mhxssl"); //每行显示数量 for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count; i++) //三元相图模板 list 文本 { xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb[i].ToString(), "M_SYXT", "list_lbv_syxt_mblb", "MB" + i.ToString()); } //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取 for (int i = m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count; i < 1000; i++) { string strxh = i.ToString(); if (null != xmlutil.Read("M_SYXT", "list_lbv_syxt_mblb", "MB" + strxh)) { //删除该节点 xmlutil.RemoveNode("M_SYXT", "list_lbv_syxt_mblb", "MB" + strxh); } else { break; } } for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count; i++) //三元相图模板 list 索引 { 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()); } //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取 for (int i = m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Count; i < 1000; i++) { string strxh = i.ToString(); if (null != xmlutil.Read("M_SYXT", "list_lbv_syxt_mblb_index", "MBIndex" + strxh)) { //删除该节点 xmlutil.RemoveNode("M_SYXT", "list_lbv_syxt_mblb_index", "MBIndex" + strxh); } else { break; } } //颗粒列表信息 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_xsmk.ToString(), "M_KLLBXX", "b_ck_kllb_xsmk"); //是否显示模块 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fjzt.ToString(), "M_KLLBXX", "b_ck_kllb_fjzt");//附加帧图 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_jsfs.ToString(), "M_KLLBXX", "index_cb_kllb_jsfs"); //计算方式 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_klfw.ToString(), "M_KLLBXX", "index_cb_kllb_klfw"); //颗粒范围 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.int_tb_kllb_ylsx.ToString(), "M_KLLBXX", "int_tb_kllb_ylsx"); //数量上限 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_tb_kllb_sxys.ToString(), "M_KLLBXX", "str_tb_kllb_sxys"); //显示元素 for (int i = 0; i < m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys.Count; i++) //显示元素列表 { 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()); } //然后判断一下xml中是否还存在之前比现有长度长的节点存在,存在则删除,防止后面再进行读取 for (int i = m_OTSReport_Export.m_mbszclass.M_KLLBXX.list_str_tb_lllb_sxys.Count; i < 1000; i++) { string strxh = i.ToString(); if (null != xmlutil.Read("M_KLLBXX", "list_str_tb_lllb_sxys", "YS" + strxh)) { //删除该节点 xmlutil.RemoveNode("M_KLLBXX", "list_str_tb_lllb_sxys", "YS" + strxh); } else { break; } } xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_ystx.ToString(), "M_KLLBXX", "b_ck_kllb_ystx"); //原始图像 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fdtx.ToString(), "M_KLLBXX", "b_ck_kllb_fdtx"); //放大图像 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_npxx.ToString(), "M_KLLBXX", "b_ck_kllb_npxx"); //能谱图像 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p1.ToString(), "M_KLLBXX", "str_cb_kllb_sort_p1");//颗粒排序表列第一个可选参数(string) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p1.ToString(), "M_KLLBXX", "index_cb_kllb_sort_p1");//颗粒排序表列第一个可选参数(index) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p2.ToString(), "M_KLLBXX", "str_cb_kllb_sort_p2");//颗粒排序表列第二个可选参数(string) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p2.ToString(), "M_KLLBXX", "index_cb_kllb_sort_p2");//颗粒排序表列第二个可选参数(index) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p3.ToString(), "M_KLLBXX", "str_cb_kllb_sort_p3");//颗粒排序表列第三个可选参数(string) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p3.ToString(), "M_KLLBXX", "index_cb_kllb_sort_p3");//颗粒排序表列第三个可选参数(index) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_chartSort_p1.ToString(), "M_KLLBXX", "str_cb_kllb_chartSort_p1");//帧图表列第一个可选参数(string) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_chartSort_p1.ToString(), "M_KLLBXX", "index_cb_kllb_chartSort_p1");//帧图表列第一个可选参数(index) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_chartSort_p2.ToString(), "M_KLLBXX", "str_cb_kllb_chartSort_p2");//帧图表列第二个可选参数(string) xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_chartSort_p2.ToString(), "M_KLLBXX", "index_cb_kllb_chartSort_p2");//帧图表列第二个可选参数(index) //xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_chartSort_p3.ToString(), "M_KLLBXX", "str_cb_kllb_chartSort_p3");//帧图表列第三个可选参数(string) //xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_chartSort_p3.ToString(), "M_KLLBXX", "index_cb_kllb_chartSort_p3");//帧图表列第三个可选参数(index) //夹杂物占比 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_JZWZB.b_ck_surface.ToString(), "M_JZWZB", "b_ck_surface");//夹杂物占比表 xmlutil.Write(m_OTSReport_Export.m_mbszclass.M_JZWZB.b_ck_chart.ToString(), "M_JZWZB", "b_ck_chart");//夹杂物占比图 } } private void SaveTemplateParameters() { //首页 m_OTSReport_Export.m_mbszclass.M_SY.str_tb_ZBT = tb_ZBT.Text; m_OTSReport_Export.m_mbszclass.M_SY.str_tb_FBT = tb_FBT.Text; m_OTSReport_Export.m_mbszclass.M_SY.str_tb_YPBH = tb_YPBH.Text; m_OTSReport_Export.m_mbszclass.M_SY.str_tb_CKBZ = tb_CKBZ.Text; m_OTSReport_Export.m_mbszclass.M_SY.b_ck_ypsm = ck_ypsm.Checked; m_OTSReport_Export.m_mbszclass.M_SY.b_ck_jggk = ck_jggk.Checked; //页眉页脚 m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_ymwb = tb_ymwb.Text; m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_KHH = tb_khh.Text; m_OTSReport_Export.m_mbszclass.M_YMYJ.b_ck_ym = ck_ym.Checked; m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_yjwb = tb_yjwb.Text; //颗粒分析结果 m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_ck_klcc_xsmk = ck_klcc_xsmk.Checked; m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_jsfs = cb_klcc_jsfs.Text;//计算方式 m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_jsfs = cb_klcc_jsfs.SelectedIndex; m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_ljb = cb_klcc_ljb.Text;//粒级表 m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_ljb = cb_klcc_ljb.SelectedIndex; //元素分析结果 m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_ysfx_xsmk = ck_ysfx_xsmk.Checked; m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_ysfx_xsys = tb_ysfx_xsys.Text;//显示元素 //三元相图 m_OTSReport_Export.m_mbszclass.M_SYXT.b_ck_syxt_xsmk = ck_syxt_xsmk.Checked; m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_ljb = cb_syxt_ljb.Text;//粒级表 m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_ljb = cb_syxt_ljb.SelectedIndex; m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_mhxssl = cb_syxt_mhxssl.Text;//每行显示数量 //获取勾选的项 m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Clear(); m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Clear(); for (int i = 0; i < lbv_syxt_mblb.CheckedItems.Count; i++) { string str = lbv_syxt_mblb.CheckedItems[i].Text; m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Add(str); //同时保存三元素相图的索引 for (int j = 0; j < lbv_syxt_mblb.Items.Count; j++) { if (str == lbv_syxt_mblb.Items[j].Text) m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb_index.Add(j); } } //颗粒列表信息 m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_xsmk = ck_kllb_xsmk.Checked; m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fjzt = ck_kllb_fjzt.Checked; m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p1 = comboBox_p1.Text;//颗粒列表行第一个字段的可选参数 m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p1 = comboBox_p1.SelectedIndex; m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p2 = comboBox_p2.Text;//颗粒列表行第二个字段的可选参数 m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p2 = comboBox_p2.SelectedIndex; m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_sort_p3 = comboBox_p3.Text;//颗粒列表行第三个字段的可选参数 m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p3 = comboBox_p3.SelectedIndex; m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_chartSort_p1 = cb_FrameChart_p1.Text;//颗粒帧图表行第一个字段的可选参数 m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_chartSort_p1 = cb_FrameChart_p1.SelectedIndex; m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_cb_kllb_chartSort_p2 = cb_FrameChart_p2.Text;//颗粒帧图表行第二个字段的可选参数 m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_chartSort_p2 = cb_FrameChart_p2.SelectedIndex; if (ck_kllb_xsmk.Checked) { //m_OTSReport_Export.m_mbszclass.M_KLLBXX.int_tb_kllb_ylsx = Convert.ToInt32(tb_kllb_ylsx.Text.Trim());//数量上限 } else { m_OTSReport_Export.m_mbszclass.M_KLLBXX.int_tb_kllb_ylsx = Convert.ToInt32("1"); } //m_OTSReport_Export.m_mbszclass.M_KLLBXX.str_tb_kllb_sxys = tb_kllb_sxys.Text;//显示元素 m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_ystx = ck_kllb_ystx.Checked;//原始图像 m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fdtx = ck_kllb_fdtx.Checked;//放大图像 m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_npxx = ck_kllb_npxx.Checked;//能谱图像 //备注 m_OTSReport_Export.m_mbszclass.M_SY.str_bz = textBox_strBZ.Text; //选择颗粒导出范围 m_OTSReport_Export.m_mbszclass.M_SY.str_xzkl = cb_ParticleRange.Text;//颗粒范围内容 m_OTSReport_Export.m_mbszclass.M_SY.int_xzkl = cb_ParticleRange.SelectedIndex;//颗粒范围索引 //夹杂物占比 m_OTSReport_Export.m_mbszclass.M_JZWZB.b_ck_surface = ck_jzwzb_surface.Checked;//夹杂物占比表 m_OTSReport_Export.m_mbszclass.M_JZWZB.b_ck_chart = ck_jzwzb_chart.Checked;//夹杂物占比图 } private void LoadControls() { //备注 textBox_strBZ.Text = m_OTSReport_Export.m_mbszclass.M_SY.str_bz; cb_ParticleRange.Text = m_OTSReport_Export.m_mbszclass.M_SY.str_xzkl; //首页 tb_ZBT.Text = m_OTSReport_Export.m_mbszclass.M_SY.str_tb_ZBT; tb_FBT.Text = m_OTSReport_Export.m_mbszclass.M_SY.str_tb_FBT; tb_YPBH.Text = m_OTSReport_Export.m_mbszclass.M_SY.str_tb_YPBH; tb_CKBZ.Text = m_OTSReport_Export.m_mbszclass.M_SY.str_tb_CKBZ; ck_ypsm.Checked = m_OTSReport_Export.m_mbszclass.M_SY.b_ck_ypsm; ck_jggk.Checked = m_OTSReport_Export.m_mbszclass.M_SY.b_ck_jggk; //页眉页脚 tb_ymwb.Text = m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_ymwb; tb_khh.Text = m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_KHH; ck_ym.Checked = m_OTSReport_Export.m_mbszclass.M_YMYJ.b_ck_ym; tb_yjwb.Text = m_OTSReport_Export.m_mbszclass.M_YMYJ.str_tb_yjwb; //颗粒分析结果 ck_klcc_xsmk.Checked = m_OTSReport_Export.m_mbszclass.M_KLFXJG.b_ck_klcc_xsmk; //cb_klcc_ljb.Text = m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_jsfs;//计算方式 cb_klcc_jsfs.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_jsfs; //cb_klcc_ljb.Text = m_OTSReport_Export.m_mbszclass.M_KLFXJG.str_cb_klcc_ljb;//粒级表 cb_klcc_ljb.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLFXJG.index_cb_klcc_ljb; //元素分析结果 ck_ysfx_xsmk.Checked = m_OTSReport_Export.m_mbszclass.M_YSFXJG.b_ck_ysfx_xsmk; tb_ysfx_xsys.Text = m_OTSReport_Export.m_mbszclass.M_YSFXJG.str_tb_ysfx_xsys;//显示元素 //三元相图 ck_syxt_xsmk.Checked = m_OTSReport_Export.m_mbszclass.M_SYXT.b_ck_syxt_xsmk; cb_syxt_ljb.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_SYXT.index_cb_syxt_ljb;//粒级表 cb_syxt_mhxssl.Text = m_OTSReport_Export.m_mbszclass.M_SYXT.str_cb_syxt_mhxssl;// 每行显示数量 //获取勾选的项 for (int i = 0; i < lbv_syxt_mblb.Items.Count; i++) { for (int j = 0; j < m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb.Count; j++) { if (lbv_syxt_mblb.Items[i].Text == m_OTSReport_Export.m_mbszclass.M_SYXT.list_lbv_syxt_mblb[j]) { //匹配到了 lbv_syxt_mblb.Items[i].Checked = true; } } } //颗粒列表信息 ck_kllb_xsmk.Checked = m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_xsmk; ck_kllb_fjzt.Checked = m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fjzt; ck_kllb_ystx.Checked = m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_ystx;//原始图像 ck_kllb_fdtx.Checked = m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_fdtx;//放大图像 ck_kllb_npxx.Checked = m_OTSReport_Export.m_mbszclass.M_KLLBXX.b_ck_kllb_npxx;//能谱图像 comboBox_p1.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p1; comboBox_p2.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p2; comboBox_p3.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_sort_p3; cb_FrameChart_p1.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_chartSort_p1; cb_FrameChart_p2.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_chartSort_p2; //cb_FrameChart_p3.SelectedIndex = m_OTSReport_Export.m_mbszclass.M_KLLBXX.index_cb_kllb_chartSort_p3; //夹杂物占比 ck_jzwzb_surface.Checked = m_OTSReport_Export.m_mbszclass.M_JZWZB.b_ck_surface;//夹杂物占比表 ck_jzwzb_chart.Checked = m_OTSReport_Export.m_mbszclass.M_JZWZB.b_ck_chart;//夹杂物占比图 } /// ///绑定下拉框,指定绑定的位置 /// private void BindComboBox(ComboBox cbo, OTS_REPORT_PROP_GRID_ITEMS in_enum) { cbo.Items.Clear(); List list_str = new List(); switch (in_enum) { case OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE://计算方式 list_str = m_OTSReport_Export.m_ReportApp.m_rstDataMgr.GetSizeCalMethodTypeList(); break; case OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE://粒级表 list_str = m_OTSReport_Export.m_ReportApp.m_rstDataMgr.GetPartSizeFileList(); break; case OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE://数据类型,全部颗粒,分析颗粒 list_str = m_OTSReport_Export.m_ReportApp.m_rstDataMgr.ParticleRange(); break; case OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE://三元相图模板 list_str = m_OTSReport_Export.m_ReportApp.m_rstDataMgr.GetTriTemplateNameList(); break; case OTS_REPORT_PROP_GRID_ITEMS.PARTICE_LIST://三元相图模板 list_str = m_OTSReport_Export.m_ReportApp.m_rstDataMgr.getTableData(); break; } for (int i = 0; i < list_str.Count; i++) { cbo.Items.Add(list_str[i]); } if (cbo.Items.Count > 0) cbo.SelectedIndex = 0; } /// /// 对选择的元素进行显示及选择的封装方法 /// /// private void SetPeriodicTableControl(TextBox in_tb, List in_list_str) { in_list_str.Clear(); //打开编辑元素列表窗体 OTSPeriodicTableForm_Small opts = new OTSPeriodicTableForm_Small(); //获取需要显示的元素列表,并转换成元素周期表窗体可接受的格式,传入---------------------- string str_xsys = in_tb.Text.Trim(); List list_str = new List(); string[] strs = str_xsys.Split(','); for (int i = 0; i < strs.Length; i++) { list_str.Add(strs[i]); } //清除元素周期表中所有的记录 opts.m_List_Periodic.Clear(); //将该分类下的元素添加到元素周期表窗体的List_periodic中 for (int i = 0; i < strs.Length; i++) { string str_ysm = strs[i]; Periodic ls_periodic = new Periodic(); ls_periodic = CListPeriodic.GetPeriodicByYsm(CListPeriodic.GetListPeriodic(), str_ysm); opts.m_List_Periodic.Add(ls_periodic); } //---------------------------------------------------------------------------------------- opts.ShowDialog(); //先清空元素 str_xsys = ""; //然后再将选择的元素,组合起来,返回显示到该窗体上 if (opts.m_List_Periodic.Count > 0) { for (int i = 0; i < opts.m_List_Periodic.Count; i++) { if (str_xsys == "") { str_xsys = opts.m_List_Periodic[i].FH; } else { str_xsys = str_xsys + "," + opts.m_List_Periodic[i].FH; } //同时将元素保存到字符串列表中 in_list_str.Add(opts.m_List_Periodic[i].FH); } } //再对选择的元素进行显示 in_tb.Text = str_xsys; } /// /// 选择显示颗粒列表中的图片 /// #endregion #region 相关控件事件 private void button6_Click(object sender, EventArgs e) { if (VerifyControlValue() == false) return; string[] after = tb_ysfx_xsys.Text.Split(new char[] { ',' }); m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Clear(); for (int i=0;i< after.Length;i++) { m_OTSReport_Export.m_mbszclass.M_YSFXJG.list_str_tb_ysfx_xsys.Add(after[i]); } SaveTemplateParameters(); this.DialogResult = DialogResult.Yes; //保存到上次路径文件 SaveFileToXml(); this.Close(); } private void cb_syxt_mhxssl_SelectedIndexChanged(object sender, EventArgs e) { } #endregion private void comboBox_PeriodicTable_SelectedIndexChanged(object sender, EventArgs e) { if (comboBox_PeriodicTable.Text != null && comboBox_PeriodicTable.SelectedItem != null) { string newStr = comboBox_PeriodicTable.SelectedItem.ToString(); string[] after = tb_ysfx_xsys.Text.Split(new char[] { ',' }); for (int i=0;i< after.Length;i++) { if (after[i] == newStr) { MessageBox.Show("Element already exists!"); return; } } if (tb_ysfx_xsys.Text == "") tb_ysfx_xsys.Text = tb_ysfx_xsys.Text + newStr; else if (tb_ysfx_xsys.Text.Substring(tb_ysfx_xsys.Text.Length - 1) != ",") tb_ysfx_xsys.Text = tb_ysfx_xsys.Text + "," + newStr; else tb_ysfx_xsys.Text = tb_ysfx_xsys.Text + newStr; comboBox_PeriodicTable.Text = null; } } private void comboBox_PeriodicTable_KeyDown(object sender, KeyEventArgs e) { } private void button3_Click_1(object sender, EventArgs e) { string str = ""; string[] after = tb_ysfx_xsys.Text.Split(new char[] { ',' }); for (int i=0;i< after.Length-1;i++) { if (i == after.Length - 2) str = str + after[i]; else str = str + after[i] + ","; } tb_ysfx_xsys.Text = str; } private void ck_jzwzb_surface_CheckedChanged(object sender, EventArgs e) { if (ck_jzwzb_surface.Checked==false) { ck_jzwzb_chart.Checked = false; } } } }