using OTS.WinFormsUI.Docking; using OTSIncAReportApp.OTSDataMgrFunction; using OTSIncAReportApp.OTSSampleReportInfo; using OTSIncAReportApp.SysMgrTools; using OTSIncAReportGB; using OTSIncAReportGrids; using OTSModelSharp.ResourceManage; using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Windows.Forms; namespace OTSIncAReportApp { /// /// 属性Grid窗体 /// public partial class frmReportConditionChoose : DockContent { #region 变量定义 public frmReportApp m_ReportApp = null; public ResultDataMgr m_DataMgr; /// /// 属性Grid对象,全局变量 /// public OTSSourceGrid m_ConditionGrid = null; /// /// 记录当前标签索引 /// public DisplayPicutureType tabIndex = 0; public List SourceGridDataList = new List(); //所有模块的SourceGrid public List SourceGridDataListLog = new List(); //所有模块的SourceGrid使用记录 public ReportCondition SourceGridData = new ReportCondition(); //当前SourceGrid //国际化存储信息 Hashtable table; #endregion #region 构造函数 /// /// 构造函数 /// /// public frmReportConditionChoose(frmReportApp ReportApp) { InitializeComponent(); m_ReportApp = ReportApp; m_ConditionGrid = new OTSSourceGrid(this); m_DataMgr = ReportApp.m_DataMgrFun; #region 国际化语言 Language lan = new Language(this); table = lan.GetNameTable(this.Name); #endregion } #endregion #region 属性Grid相关方法 public void ShowsTheDefaultPic() { try { if (m_DataMgr. resultFilesList.Count > 0) { ShowDataDiagram(tabIndex); } } catch (Exception ex) { //日记记录 string str = ex.ToString(); } } /// /// 添加属性Grid相关数据 /// public void DisCurrentPicProperty() { ReportCondition SMInfo = new ReportCondition(); //获取工作样品属性 if (!GetWorkingPictureConditionVal(ref SMInfo)) { return; } //添加属性Grid相关数据 DisProperyWindow(SMInfo); } /// /// 接收 MeasureApp 发送的样品属性数据,通过Grid显示在properyWindow上 /// /// public void DisProperyWindow(ReportCondition SampleInfo) { // 当点击事件响应结束后,将之前点击的行数和列数清0,避免选择工作样品重新赋值响应CELL值改变事件 PropGrid.Show(); m_ConditionGrid.m_ClickRow = 0; m_ConditionGrid.m_ClickColumn = 0; if (PropGrid.Rows.Count() > 0) { PropGrid.Rows.Clear(); PropGrid.Redim(OTSSourceGrid.m_Const_Grid_Row, OTSSourceGrid.m_Const_Grid_Column); } m_ConditionGrid.InitGrid(); m_ConditionGrid.ShowGeneralGrid(SampleInfo); } public bool GetWorkingPictureConditionVal(ref ReportCondition SMeasureInfo) { var tabindex = this.tabIndex; if (m_DataMgr. WorkingResult == -1) { return false; } if (SourceGridData.ConditionItemList.Count > 0) { ReportCondition a = SourceGridData; //new if (a.TSampleRst.List_ShowGrid_Items == null) { a.TSampleRst.List_ShowGrid_Items = SourceGridDataListLog[(int)a.TabIndex].TSampleRst.List_ShowGrid_Items; } SourceGridDataListLog[(int)a.TabIndex] = a; ReportCondition b = SourceGridDataListLog[(int)tabindex]; SMeasureInfo.FilterData(b); SourceGridData = SMeasureInfo; } else { ReportCondition data = new ReportCondition(); data.TabIndex = DisplayPicutureType.AnalyzeImg; //data.TSampleParam.sSampleTitleName = ",0,2,3,7,9,10,13,"; data.TSampleRst.List_ShowGrid_Items = new List { OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE,//0 OTS_REPORT_PROP_GRID_ITEMS.IMAGE_TYPE,//2 OTS_REPORT_PROP_GRID_ITEMS.IMAGE_DISPLAY_TYPE,//3 //OTS_REPORT_PROP_GRID_ITEMS.PARTICLE_TYPE,//7 OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE,//9 OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS,//10 OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE};//13 data.ConditionItemList = GetSourceGridData(DisplayPicutureType.AnalyzeImg); SourceGridDataList.Add(data); SourceGridDataListLog.Add(data); ReportCondition data1 = new ReportCondition(); data1.TabIndex = DisplayPicutureType.AnalyzeDataTable; //data1.TSampleParam.sSampleTitleName = ",0,1,5,"; data1.TSampleRst.List_ShowGrid_Items = new List { OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE,//0 OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE,//1 OTS_REPORT_PROP_GRID_ITEMS.CALCULATE_TABLE_TYPE};//5 data1.ConditionItemList = GetSourceGridData(DisplayPicutureType.AnalyzeDataTable); SourceGridDataList.Add(data1); SourceGridDataListLog.Add(data1); ReportCondition data2 = new ReportCondition(); data2.TabIndex = DisplayPicutureType.AnalyzeDataChart; //data2.TSampleParam.sSampleTitleName = ",0,1,6,"; data2.TSampleRst.List_ShowGrid_Items = new List { OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE,//0 OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE,//1 OTS_REPORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE }; //,//6 //OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE};//13 data2.ConditionItemList = GetSourceGridData(DisplayPicutureType.AnalyzeDataChart); SourceGridDataList.Add(data2); SourceGridDataListLog.Add(data2); switch (tabindex) { case DisplayPicutureType.AnalyzeImg: SMeasureInfo . FilterData(data); break; case DisplayPicutureType.AnalyzeDataTable: SMeasureInfo . FilterData(data1); break; case DisplayPicutureType.AnalyzeDataChart: SMeasureInfo . FilterData(data2); break; } SourceGridData = SMeasureInfo; } return true; } private ConditionItem NewGridData(int tbindex, OTS_REPORT_PROP_GRID_ITEMS iItemId, int number, OTS_ITEM_TYPES iItemValType, bool bReadOnly, object itemVal, List comboDownList) { string text = ""; string des = ""; string downlist = ""; OTSDataType.XmlResourceData.GetInstance().GetStringByKey(tbindex, number, ref text, ref des, ref downlist); ConditionItem sampleData = new ConditionItem(); sampleData.iItemId = iItemId; sampleData.sSCaptionName = text; sampleData.iItemValType = iItemValType; sampleData.bReadOnly = bReadOnly; sampleData.sDescriptionInfo = des; if (comboDownList.Count == 0) { List liststr = new List(); if (downlist != "") { string[] arrTemp = downlist.Split(','); for (int i = 0; i < arrTemp.Count(); i++) { liststr.Add(arrTemp[i]); } sampleData.itemVal = liststr[0]; sampleData.comboDownList = liststr; } else { sampleData.itemVal = "0"; sampleData.comboDownList = liststr; } } else { sampleData.itemVal = itemVal; sampleData.comboDownList = comboDownList; } return sampleData; } /// /// 初始化加载sourceGrid各项 /// /// /// SampleData1 private List GetSourceGridData(DisplayPicutureType tbindex) { List list = new List(); if (tbindex == DisplayPicutureType.AnalyzeImg)//分布图页 { //测量结果数据 List list_source_str = m_DataMgr.GetSampleListName(); list.Add(NewGridData((int)tbindex, 0, ResourceID.Measurement_Result_Data_0, OTS_ITEM_TYPES.COMBO, false, list_source_str[m_DataMgr.WorkingResult], list_source_str)); //测量图类型 bse,颗粒分类图 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.IMAGE_TYPE, ResourceID.Type_Of_Survey_Drawing_0, OTS_ITEM_TYPES.COMBO, false, "", new List() { })); //测量图显示方式 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.IMAGE_DISPLAY_TYPE, ResourceID.Display_mode_Of_Measurement_Diagram_0, OTS_ITEM_TYPES.COMBO, false, "", new List() { })); //颗粒类型 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.PARTICLE_TYPE, ResourceID.Particle_Type_0, OTS_ITEM_TYPES.COMBO, false, "", new List() { })); //粒级表 List list_partsizelist = m_DataMgr.GetPartSizeFileList();//从系统默认的路径中查找出所有的粒级表文件 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE, ResourceID.Particle_Size_Table_0, OTS_ITEM_TYPES.COMBO, false, list_partsizelist[0], list_partsizelist)); //粒级 List sizeList = m_DataMgr.GetPartSizeList();//获取粒级后额外增加全部,自定义,选项 sizeList.Insert(0, OTSDataType.XmlResourceData.GetInstance().GetStringByKey((int)tbindex, ResourceID.All_0));//全部 sizeList.Insert(1, OTSDataType.XmlResourceData.GetInstance().GetStringByKey((int)tbindex, ResourceID.custom_0));//自定义 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS, ResourceID.Particle_Size_0, OTS_ITEM_TYPES.COMBO, false, sizeList[0], sizeList)); //自定义最小 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MIN, ResourceID.Minimum_Particle_0, OTS_ITEM_TYPES.DOUBLE, false, "0", new List { })); //自定义最大 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MAX, ResourceID.Maximum_Particle_0, OTS_ITEM_TYPES.DOUBLE, false, "0", new List { })); //测量数据 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.MEASURE_DATA_TYPE, ResourceID.measured_Data_0, OTS_ITEM_TYPES.COMBO, false, "", new List { })); //计算方式 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE, ResourceID.Dimension_Calculation_Method_0, OTS_ITEM_TYPES.COMBO, false, m_DataMgr.GetSizeCalMethodTypeList()[0], m_DataMgr.GetSizeCalMethodTypeList())); } else if (tbindex == DisplayPicutureType.AnalyzeDataTable)//Grid表格页 { //测量结果数据 List list_source_str = m_DataMgr.GetSampleListName(); list.Add(NewGridData((int)tbindex, 0, ResourceID.Measurement_Result_Data_1, OTS_ITEM_TYPES.COMBO, false, list_source_str[m_DataMgr.WorkingResult], list_source_str)); //数据类型 List list_datasourcetypelist = m_DataMgr.GetDataSourceTypeList(); list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE, ResourceID.data_type_1, OTS_ITEM_TYPES.COMBO, false, list_datasourcetypelist[0], list_datasourcetypelist)); list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.CALCULATE_TABLE_TYPE, ResourceID.Data_Table_Type_1, OTS_ITEM_TYPES.COMBO, false, "", new List { })); //粒级表 List list_partsizelist = m_DataMgr.GetPartSizeFileList();//从系统默认的路径中查找出所有的粒级表文件 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE, ResourceID.Particle_Size_Table_1, OTS_ITEM_TYPES.COMBO, false, list_partsizelist[0], list_partsizelist)); //尺寸计算方法 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE, ResourceID.Dimension_Calculation_Method_1, OTS_ITEM_TYPES.COMBO, false, m_DataMgr.GetSizeCalMethodTypeList()[0], m_DataMgr.GetSizeCalMethodTypeList())); } else if (tbindex == DisplayPicutureType.AnalyzeDataChart)//Chart图页 { //测量结果数据 List list_source_str = m_DataMgr.GetSampleListName(); list.Add(NewGridData((int)tbindex, 0, ResourceID.Measurement_Result_Data_2, OTS_ITEM_TYPES.COMBO, false, list_source_str[m_DataMgr.WorkingResult], list_source_str)); //数据类型 List list_datasourcetypelist = m_DataMgr.GetDataSourceTypeList(); list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE, ResourceID.data_type_2, OTS_ITEM_TYPES.COMBO, false, list_datasourcetypelist[0], list_datasourcetypelist)); //数据图类型 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE, ResourceID.Data_Table_Type_2, OTS_ITEM_TYPES.COMBO, false, "", new List { })); //三元相图模板 List trio_listname = m_DataMgr.GetTriTemplateNameList(); list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE, ResourceID.Ternary_Phase_Diagram_2, OTS_ITEM_TYPES.COMBO, false, trio_listname.First(), trio_listname)); //粒级表 List list_partsizelist = m_DataMgr.GetPartSizeFileList(); list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE, ResourceID.Particle_Size_Table_2, OTS_ITEM_TYPES.COMBO, false, list_partsizelist[0], list_partsizelist)); //尺寸计算法 list.Add(NewGridData((int)tbindex, OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE, ResourceID.Dimension_Calculation_Method_2, OTS_ITEM_TYPES.COMBO, false, m_DataMgr.GetSizeCalMethodTypeList().First(), m_DataMgr.GetSizeCalMethodTypeList())); } return list; } /// /// 根据样品属性 显示对应的图表 /// /// 标签索引 /// 属性中选择的图表名称 public void ShowDataDiagram(DisplayPicutureType tabindex) { int sourceid = m_DataMgr.WorkingResult; var resultFile = m_DataMgr.resultFilesList[sourceid]; var prop = SourceGridData; String m_fileName = resultFile.FileName; #region 对各窗体模块进行实际加载的代码 switch (tabindex) { //分析图 case DisplayPicutureType.AnalyzeImg://第一页选项窗体,分析图 m_ReportApp.m_RibbonFun.SetRibbonButnStatu_ByModule(DisplayPicutureType.AnalyzeImg); int display = prop.GetComboDownListIndexByItemName(OTS_REPORT_PROP_GRID_ITEMS.IMAGE_DISPLAY_TYPE); if (display == (int)IMAGE_DISPLAY_TYPE.GENERAL) { //分布图对象为空,或当前显示的与在测量结果中选择的不匹配,则重新加载 if (null != m_ReportApp.im_Control_DrawDistrbutionImageAndBSE) { if (m_fileName != m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.ShowSourceName) { //如果已经不是原先的数据源,则需要重新加载,设定为空,后面重新加载 m_ReportApp.im_Control_DrawDistrbutionImageAndBSE = null; } } //不需重新加载,则加载条件 if (m_ReportApp.im_Control_DrawDistrbutionImageAndBSE != null) { m_ReportApp.m_SImageWindow.Controls.Clear(); m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.DataSourceID = sourceid; m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.ShowSourceName = m_fileName; m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.Dock = DockStyle.Fill; m_ReportApp.m_SImageWindow.Controls.Add(m_ReportApp.im_Control_DrawDistrbutionImageAndBSE); m_ReportApp.m_SImageWindow.Activate(); m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.DrawDistrbutionImageAndBSE_ByQuery(SourceGridData); m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.SetSelectParticle(m_ReportApp.SelectedParticles); string ImageType = prop.GetItemvalByItemName(OTS_REPORT_PROP_GRID_ITEMS.IMAGE_TYPE); //切换分布图显示方式 m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.ShowMode(ImageType); m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.FullGraphMatch(); } else if (m_ReportApp.im_Control_DrawDistrbutionImageAndBSE == null) { m_ReportApp.m_SImageWindow.Controls.Clear(); m_ReportApp.im_Control_DrawDistrbutionImageAndBSE = new OTSIncAReportGraph.Controls.Control_DrawDistrbutionImageAndBSE(m_ReportApp); m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.DataSourceID = sourceid; m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.ShowSourceName = m_fileName; m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.Dock = DockStyle.Fill; m_ReportApp.m_SImageWindow.Controls.Add(m_ReportApp.im_Control_DrawDistrbutionImageAndBSE); m_ReportApp.m_SImageWindow.Activate(); m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.DrawDistrbutionImageAndBSE_ByQuery(SourceGridData); m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.SetSelectParticle(m_ReportApp.SelectedParticles); m_ReportApp.im_Control_DrawDistrbutionImageAndBSE.FullGraphMatch(); } } else { //排列图为空,或与在测量结果中选择的名字不一致时,则重新加载 if (null != m_ReportApp.im_Control_DrawDistrbutionSortImage) { if (m_fileName != m_ReportApp.im_Control_DrawDistrbutionSortImage.ShowSourceName) { //如果已经不是原先的数据源,则需要重新加载,设定为空,后面重新加载 m_ReportApp.im_Control_DrawDistrbutionSortImage = null; } } //不需重新加载,则加载条件 if (m_ReportApp.im_Control_DrawDistrbutionSortImage != null) { m_ReportApp.m_SImageWindow.Controls.Clear(); m_ReportApp.im_Control_DrawDistrbutionSortImage.DataSourceID = sourceid; m_ReportApp.im_Control_DrawDistrbutionSortImage.ShowSourceName = m_fileName; m_ReportApp.im_Control_DrawDistrbutionSortImage.Dock = DockStyle.Fill; m_ReportApp.m_SImageWindow.Controls.Add(m_ReportApp.im_Control_DrawDistrbutionSortImage); m_ReportApp.m_SImageWindow.Activate(); m_ReportApp.im_Control_DrawDistrbutionSortImage.GetDistrbutionSortimage_ByQuery(SourceGridData); m_ReportApp.im_Control_DrawDistrbutionSortImage.SetSelectParticle(m_ReportApp.SelectedParticles); //判断当前点击测量结果中的数据源名,是否与已经加载的排序图显示的数据源名相同 if (m_fileName == m_ReportApp.im_Control_DrawDistrbutionSortImage.ShowSourceName) { //相同,加载计算条件 // m_RstProp.m_ReportApp.im_Control_DrawDistrbutionSortImage.Control_DrawDistrbutionSortImage_ByQuery(listGriddataclr); m_ReportApp.im_Control_DrawDistrbutionSortImage.SetSelectParticle(m_ReportApp.SelectedParticles); //idx = m_RstProp.m_ReportApp.m_DataMgrFun.GetPropIndexByPropItemName(m_RstProp.SourceGridData.ConditionItemList, OTSIncAReportApp.OTSSampleReportInfo.OTS_REPORT_PROP_GRID_ITEMS.IMAGE_TYPE); string ImageType = prop.GetItemvalByItemName(OTS_REPORT_PROP_GRID_ITEMS.IMAGE_TYPE); //切换BSE和分类,两种影像的显示方式 if (ImageType == "BSE") { m_ReportApp.im_Control_DrawDistrbutionSortImage.ShowMode(false); } else { m_ReportApp.im_Control_DrawDistrbutionSortImage.ShowMode(true); } return; } } else if (m_ReportApp.im_Control_DrawDistrbutionSortImage == null) { m_ReportApp.m_SImageWindow.Controls.Clear(); m_ReportApp.im_Control_DrawDistrbutionSortImage = new OTSIncAReportGraph.Controls.Control_DrawDistrbutionSortImage(m_ReportApp); m_ReportApp.im_Control_DrawDistrbutionSortImage.DataSourceID = sourceid; m_ReportApp.im_Control_DrawDistrbutionSortImage.ShowSourceName = m_fileName; m_ReportApp.im_Control_DrawDistrbutionSortImage.Dock = DockStyle.Fill; m_ReportApp.m_SImageWindow.Controls.Add(m_ReportApp.im_Control_DrawDistrbutionSortImage); m_ReportApp.m_SImageWindow.Activate(); m_ReportApp.im_Control_DrawDistrbutionSortImage.GetDistrbutionSortimage_ByQuery(SourceGridData); m_ReportApp.im_Control_DrawDistrbutionSortImage.SetSelectParticle(m_ReportApp.SelectedParticles); } } break; //分析数据表 case DisplayPicutureType.AnalyzeDataTable: #region 第二页选项窗体,分析数据表 m_ReportApp.m_RibbonFun.SetRibbonButnStatu_ByModule(DisplayPicutureType.AnalyzeDataTable); //idx = m_RstProp.m_ReportApp.m_DataMgrFun.GetPropIndexByPropItemName(m_RstProp.SourceGridData.ConditionItemList, OTSIncAReportApp.OTSSampleReportInfo.OTS_REPORT_PROP_GRID_ITEMS.CALCULATE_TABLE_TYPE); int TableType = prop.GetComboDownListIndexByItemName(OTS_REPORT_PROP_GRID_ITEMS.CALCULATE_TABLE_TYPE); switch (TableType) { case 0: m_ReportApp.m_TablesWindow.Controls.Clear(); m_ReportApp.im_ResultGrid = new ResultGrid(m_ReportApp); m_ReportApp.im_ResultGrid.Dock = DockStyle.Fill; m_ReportApp.m_TablesWindow.Controls.Add(m_ReportApp.im_ResultGrid); m_ReportApp.m_TablesWindow.Activate(); break; case 1: if (m_ReportApp.im_ParticlesGridDevidePage != null && m_ReportApp.im_ParticlesGridDevidePage.FileName == m_fileName) { m_ReportApp.m_TablesWindow.Controls.Clear(); m_ReportApp.m_TablesWindow.Controls.Add(m_ReportApp.im_ParticlesGridDevidePage); m_ReportApp.m_TablesWindow.Activate(); } else { m_ReportApp.m_TablesWindow.Controls.Clear(); m_ReportApp.im_ParticlesGridDevidePage = new OTSIncAReportGrids.ParticlesGridDevidePage(m_ReportApp); m_ReportApp.im_ParticlesGridDevidePage.FileName = m_fileName; m_ReportApp.im_ParticlesGridDevidePage.Dock = DockStyle.Fill; m_ReportApp.m_TablesWindow.Controls.Add(m_ReportApp.im_ParticlesGridDevidePage); m_ReportApp.m_TablesWindow.Activate(); } break; case 2: m_ReportApp.m_TablesWindow.Controls.Clear(); m_ReportApp.im_CompositionDistributionGrid = new CompositionDistributionGrid(m_ReportApp); m_ReportApp.im_CompositionDistributionGrid.Dock = DockStyle.Fill; m_ReportApp.m_TablesWindow.Controls.Add(m_ReportApp.im_CompositionDistributionGrid); m_ReportApp.m_TablesWindow.Activate(); break; case 3: m_ReportApp.m_TablesWindow.Controls.Clear(); m_ReportApp.im_ElementContentGrid = new ElementContentGrid(m_ReportApp); m_ReportApp.im_ElementContentGrid.Dock = DockStyle.Fill; m_ReportApp.m_TablesWindow.Controls.Add(m_ReportApp.im_ElementContentGrid); m_ReportApp.m_TablesWindow.Activate(); break; case 4://颗粒尺寸分布表 m_ReportApp.m_TablesWindow.Controls.Clear(); m_ReportApp.im_ParticlesSizeGrid = new ParticlesSizeGrid(m_ReportApp); m_ReportApp.im_ParticlesSizeGrid.Dock = DockStyle.Fill; m_ReportApp.m_TablesWindow.Controls.Add(m_ReportApp.im_ParticlesSizeGrid); m_ReportApp.m_TablesWindow.Activate(); break; case 5: m_ReportApp.m_TablesWindow.Controls.Clear(); m_ReportApp.im_ElementCompositionAvgGrid = new ElementCompositionAvgGrid(m_ReportApp); m_ReportApp.im_ElementCompositionAvgGrid.Dock = DockStyle.Fill; m_ReportApp.m_TablesWindow.Controls.Add(m_ReportApp.im_ElementCompositionAvgGrid); m_ReportApp.m_TablesWindow.Activate(); break; case 6: //国标一 string resultfile = m_DataMgr.resultFilesList[m_DataMgr.WorkingResult].FilePath + "\\" + m_DataMgr.resultFilesList[m_DataMgr.WorkingResult].FileName; m_ReportApp.m_DataMgrFun.m_ReportMgr.AddASmplMsrResultMgr(resultfile); OTSCLRINTERFACE.CPropParamClr clr_prop = m_ReportApp.m_DataMgrFun.m_ReportMgr.GetPropertyParamTable(); clr_prop.SetDataSourceId(0);// clr_prop.SetType(1);//table clr_prop.SetCalTableType(6);//国标1 List listGriddataclr = m_ReportApp.m_DataMgrFun.m_ReportMgr.GridDataTransfer(clr_prop);// m_ReportApp.m_TablesWindow.Controls.Clear(); m_ReportApp.im_ChineseStandardABCDDS = new ChineseStandardABCDDS(m_ReportApp.m_DataMgrFun.m_ReportMgr, listGriddataclr); m_ReportApp.im_ChineseStandardABCDDS.Dock = DockStyle.Fill; m_ReportApp.m_TablesWindow.Controls.Add(m_ReportApp.im_ChineseStandardABCDDS); m_ReportApp.m_TablesWindow.Activate(); //OpenOTSINcAreportTemplateAPP(m_RstProp.m_ReportApp.m_DataMgrFun.resultFilesList[m_RstProp.m_ReportApp.m_DataMgrFun.WorkingResult].FilePath+"\\" // + m_RstProp.m_ReportApp.m_DataMgrFun.resultFilesList[m_RstProp.m_ReportApp.m_DataMgrFun.WorkingResult].FileName, "GB1"); break; case 7: //国标二 string resultfile2 = m_DataMgr.resultFilesList[m_DataMgr.WorkingResult].FilePath + "\\" + m_DataMgr.resultFilesList[m_DataMgr.WorkingResult].FileName; m_ReportApp.m_DataMgrFun.m_ReportMgr.AddASmplMsrResultMgr(resultfile2); OTSCLRINTERFACE.CPropParamClr clr_prop2 = m_ReportApp.m_DataMgrFun.m_ReportMgr.GetPropertyParamTable(); clr_prop2.SetDataSourceId(0);// clr_prop2.SetType(1);//table clr_prop2.SetCalTableType(7);//国标2 List listGriddataclr2 = m_ReportApp.m_DataMgrFun.m_ReportMgr.GridDataTransfer(clr_prop2);// m_ReportApp.m_TablesWindow.Controls.Clear(); m_ReportApp.im_NationalStandardMethodTwo = new NationalStandardMethodTwo(m_ReportApp.m_DataMgrFun.m_ReportMgr, listGriddataclr2); m_ReportApp.im_NationalStandardMethodTwo.Dock = DockStyle.Fill; m_ReportApp.m_TablesWindow.Controls.Add(m_ReportApp.im_NationalStandardMethodTwo); m_ReportApp.m_TablesWindow.Activate(); //OpenOTSINcAreportTemplateAPP(m_RstProp.m_ReportApp.m_DataMgrFun.resultFilesList[m_RstProp.m_ReportApp.m_DataMgrFun.WorkingResult].FilePath + "\\" // + m_RstProp.m_ReportApp.m_DataMgrFun.resultFilesList[m_RstProp.m_ReportApp.m_DataMgrFun.WorkingResult].FileName, "GB2"); break; case 8: //美标 string resultfile3 = m_DataMgr.resultFilesList[m_DataMgr.WorkingResult].FilePath + "\\" + m_DataMgr.resultFilesList[m_DataMgr.WorkingResult].FileName; m_ReportApp.m_DataMgrFun.m_ReportMgr.AddASmplMsrResultMgr(resultfile3); OTSCLRINTERFACE.CPropParamClr clr_prop3 = m_ReportApp.m_DataMgrFun.m_ReportMgr.GetPropertyParamTable(); clr_prop3.SetDataSourceId(0);// clr_prop3.SetType(1);//table clr_prop3.SetCalTableType(8); List listGriddataclr3 = m_ReportApp.m_DataMgrFun.m_ReportMgr.GridDataTransfer(clr_prop3); m_ReportApp.m_TablesWindow.Controls.Clear(); m_ReportApp.im_ASTMStandardABCDDS = new ASTMStandardABCDDS(m_ReportApp.m_DataMgrFun.m_ReportMgr, listGriddataclr3); m_ReportApp.im_ASTMStandardABCDDS.Dock = DockStyle.Fill; m_ReportApp.m_TablesWindow.Controls.Add(m_ReportApp.im_ASTMStandardABCDDS); m_ReportApp.m_TablesWindow.Activate(); //OpenOTSINcAreportTemplateAPP(m_RstProp.m_ReportApp.m_DataMgrFun.resultFilesList[m_RstProp.m_ReportApp.m_DataMgrFun.WorkingResult].FilePath + "\\" // + m_RstProp.m_ReportApp.m_DataMgrFun.resultFilesList[m_RstProp.m_ReportApp.m_DataMgrFun.WorkingResult].FileName, "ASTM"); break; case 9: //德标 string resultfile4 = m_DataMgr.resultFilesList[m_DataMgr.WorkingResult].FilePath + "\\" + m_DataMgr.resultFilesList[m_DataMgr.WorkingResult].FileName; m_ReportApp.m_DataMgrFun.m_ReportMgr.AddASmplMsrResultMgr(resultfile4); OTSCLRINTERFACE.CPropParamClr clr_prop4 = m_ReportApp.m_DataMgrFun.m_ReportMgr.GetPropertyParamTable(); clr_prop4.SetDataSourceId(0);// clr_prop4.SetType(1);//table clr_prop4.SetCalTableType(9); List listGriddataclr4 = m_ReportApp.m_DataMgrFun.m_ReportMgr.GridDataTransfer(clr_prop4); m_ReportApp.m_TablesWindow.Controls.Clear(); m_ReportApp.im_DINStandardABCDDS = new DINStandardABCDDS(m_ReportApp.m_DataMgrFun.m_ReportMgr, listGriddataclr4); m_ReportApp.im_DINStandardABCDDS.Dock = DockStyle.Fill; m_ReportApp.m_TablesWindow.Controls.Add(m_ReportApp.im_DINStandardABCDDS); m_ReportApp.m_TablesWindow.Activate(); //OpenOTSINcAreportTemplateAPP(m_RstProp.m_ReportApp.m_DataMgrFun.resultFilesList[m_RstProp.m_ReportApp.m_DataMgrFun.WorkingResult].FilePath + "\\" // + m_RstProp.m_ReportApp.m_DataMgrFun.resultFilesList[m_RstProp.m_ReportApp.m_DataMgrFun.WorkingResult].FileName, "DIN"); break; } #endregion 第二页选项窗体,分析数据表 break; //分析数据图 case DisplayPicutureType.AnalyzeDataChart: m_ReportApp.m_RibbonFun.SetRibbonButnStatu_ByModule(DisplayPicutureType.AnalyzeDataChart); #region 第三页选项窗体,分析数据图 m_ReportApp.m_ChartsWindow.Controls.Clear(); string m_reportname = ""; string m_str_AxisY = ""; string str_operatonmodule = ""; //idx = m_RstProp. m_ReportApp.m_DataMgrFun.GetPropIndexByPropItemName(m_RstProp.SourceGridData.ConditionItemList, OTSIncAReportApp.OTSSampleReportInfo.OTS_REPORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE); int ChartType = prop.GetComboDownListIndexByItemName(OTS_REPORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE); switch (ChartType) { case 0: m_reportname = table["m_reportname1"].ToString();//常用夹杂物分类 m_str_AxisY = table["m_str_axisy1"].ToString(); str_operatonmodule = table["str_operatonmodule1"].ToString(); m_ReportApp.im_EChart_ParticlesComposition = new Control_ECharts.EChart_ParticlesComposition(m_ReportApp, "CommonlyUsedClassify"); m_ReportApp.im_EChart_ParticlesComposition.Dock = DockStyle.Fill; m_ReportApp.m_reportname = m_reportname; m_ReportApp.im_EChart_ParticlesComposition.m_str_AxisY = m_str_AxisY; m_ReportApp.type = "pie"; m_ReportApp.m_ChartsWindow.Controls.Add(m_ReportApp.im_EChart_ParticlesComposition); m_ReportApp.m_ChartsWindow.Activate(); break; case 1: m_reportname = table["m_reportname2"].ToString();//颗粒成分 m_str_AxisY = table["m_str_axisy2"].ToString();//颗粒数 str_operatonmodule = table["str_operatonmodule2"].ToString();//颗粒成分图 m_ReportApp.im_EChart_ParticlesComposition = new Control_ECharts.EChart_ParticlesComposition(m_ReportApp, "PComponent"); m_ReportApp.im_EChart_ParticlesComposition.Dock = DockStyle.Fill; m_ReportApp.m_reportname = m_reportname; m_ReportApp.im_EChart_ParticlesComposition.m_str_AxisY = m_str_AxisY; m_ReportApp.type = "pie"; m_ReportApp.m_ChartsWindow.Controls.Add(m_ReportApp.im_EChart_ParticlesComposition); m_ReportApp.m_ChartsWindow.Activate(); break; case 2: m_reportname = table["m_reportname3"].ToString();//元素成分 m_str_AxisY = table["m_str_axisy3"].ToString();//元素含量 str_operatonmodule = table["str_operatonmodule3"].ToString();//元素成分图 m_ReportApp.im_EChart_ParticlesComposition = new Control_ECharts.EChart_ParticlesComposition(m_ReportApp, "EComponent"); m_ReportApp.im_EChart_ParticlesComposition.Dock = DockStyle.Fill; m_ReportApp.m_reportname = m_reportname; m_ReportApp.im_EChart_ParticlesComposition.m_str_AxisY = m_str_AxisY; m_ReportApp.type = "bar"; m_ReportApp.m_ChartsWindow.Controls.Add(m_ReportApp.im_EChart_ParticlesComposition); m_ReportApp.m_ChartsWindow.Activate(); break; case 3://颗粒尺寸分布图 m_reportname = table["m_reportname4"].ToString();//颗粒尺寸分布 m_str_AxisY = table["m_str_axisy4"].ToString();//颗粒数 str_operatonmodule = table["str_operatonmodule4"].ToString();//颗粒尺寸分布图 m_ReportApp.im_EChart_ParticlesComposition = new Control_ECharts.EChart_ParticlesComposition(m_ReportApp, "PSize"); m_ReportApp.im_EChart_ParticlesComposition.Dock = DockStyle.Fill; m_ReportApp.m_reportname = m_reportname; m_ReportApp.im_EChart_ParticlesComposition.m_str_AxisY = m_str_AxisY; m_ReportApp.type = "bar"; m_ReportApp.m_ChartsWindow.Controls.Add(m_ReportApp.im_EChart_ParticlesComposition); m_ReportApp.m_ChartsWindow.Activate(); break; case 4: //idx = m_RstProp. m_ReportApp.m_DataMgrFun.GetPropIndexByPropItemName(m_RstProp. SourceGridData.ConditionItemList, OTSIncAReportApp.OTSSampleReportInfo.OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE); //string TrioChartType = prop.ConditionItemList[idx].itemVal.ToString(); //List nameList = prop.ConditionItemList[idx].comboDownList; int index = prop.GetComboDownListIndexByItemName(OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE); str_operatonmodule = table["str_operatonmodule5"].ToString(); m_ReportApp.im_EChart_Trianglediagram = new Control_ECharts.EChart_Trianglediagram(m_ReportApp); m_ReportApp.im_EChart_Trianglediagram.Template = ""; m_ReportApp.im_EChart_Trianglediagram.Dock = DockStyle.Fill; m_ReportApp.m_ChartsWindow.Controls.Add(m_ReportApp.im_EChart_Trianglediagram); m_ReportApp.m_ChartsWindow.Activate(); break; } #endregion 第三页窗体,分析数据图 break; } #endregion } #endregion #region 属性Grid相关事件 /// /// 属性Grid点击事件 /// /// /// private void PropGrid_Click_1(object sender, EventArgs e) { SourceGrid.Grid ls_gd = (SourceGrid.Grid)sender; ls_gd.Focus(); m_ConditionGrid.m_ClickRow = ls_gd.Selection.ActivePosition.Row; m_ConditionGrid.m_ClickColumn = ls_gd.Selection.ActivePosition.Column; } /// /// 主窗体大小改变时,同时改变属性Grid的大小事件 /// /// /// private void OTSPropertyWindow_Resize(object sender, EventArgs e) { if (null != m_ConditionGrid) { m_ConditionGrid.m_PropWindow_X = this.Width; m_ConditionGrid.InitGridTitlet(); } } #endregion } }