using OTSIncAReportApp.DataOperation.Model; using OTSIncAReportApp.OTSSampleReportInfo; using OTSIncAReportApp.SysMgrTools; using OTSIncAReportGB; using OTSIncAReportGrids; using SourceGrid; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Diagnostics; using System.Drawing; using System.Linq; using System.Windows.Forms; namespace OTSIncAReportApp.OTSDataMgrFunction { /// /// 属性Grid相关操作封装类 /// public class OTSSourceGrid { #region 变量定义 /// /// 主框架窗体 /// public frmReportConditionChoose m_frmPropCondition = null; /// /// 当grid被click时,确定点击的行 /// public int m_ClickRow = 0; /// /// 当grid被click时,确定点击的列 /// public int m_ClickColumn = 0; /// /// 当改变ProperyWindow窗口大小时,窗口响应Resize(object sender, EventArgs e),返回改变后的尺寸,利用改变后的窗口尺寸重回Grid的行宽和列宽 /// public int m_PropWindow_X = 0; /// /// 当改变ProperyWindow窗口大小时,窗口响应Resize(object sender, EventArgs e),返回改变后的尺寸,利用改变后的窗口尺寸重回Grid的行宽和列宽 /// public int m_PropWindow_Y = 0; /// /// 临时用于计算用的grid行号 总行数 /// public static int m_Const_Grid_Row = 42; //总行数 /// /// 临时用于计算用的grid行号 总列数 /// public static int m_Const_Grid_Column = 3; //总列数 /// /// 当选择了Grid的某个row ,修改Row的值,引发的事件 /// ChangeGridCellValEvent m_ChangeCellValEvent = null; /// /// 选择COMBOBOX值引发的事件 /// ItemValueChange2 m_ValChangeEvent2 = null; /// /// 定义分栏表头样式 /// public SourceGrid.Cells.Views.Cell m_Col_HeaderMode = null; /// /// 定义大表头grid表头样式 /// SourceGrid.Cells.Views.Cell m_CellTitleModel = null; /// /// 定义分栏标题格样式 /// SourceGrid.Cells.Views.Cell m_Col_NameMode = null; /// /// 定义分栏内容格样式 /// SourceGrid.Cells.Views.Cell m_Col_ValMode = null; /// /// 只读样式cell设置 /// SourceGrid.Cells.Views.Cell M_Col_readonly = null; /// /// 通用参数组的标题名 /// public String m_Display_Mode_Name = "parameter"; /// /// 通用参数组的GRID行数 /// public int m_Display_Mode_Row = 0; Language lan = new Language(); Hashtable table; ResultDataMgr m_DataMgr; #endregion #region 构造函数及初始化函数 public OTSSourceGrid(frmReportConditionChoose Propwindow) { m_DataMgr = Propwindow.m_ReportApp.m_rstDataMgr; m_frmPropCondition = Propwindow; m_frmPropCondition.PropGrid.Rows.Clear(); m_frmPropCondition.PropGrid.Redim(m_Const_Grid_Row, m_Const_Grid_Column); table = lan.GetNameTable("SampleGrid"); string str = table["str1"].ToString(); m_Display_Mode_Name = str; } /// /// 初始化Grid修改值事件 /// void InitChangeValEvent() { m_ChangeCellValEvent = new ChangeGridCellValEvent(this); m_ValChangeEvent2 = new ItemValueChange2(this); } #endregion #region 初始化属性Grid相关方法 /// /// 初始化属性Grid相关样式 /// public void InitGrid() { //初始化Grid修改值事件 InitChangeValEvent(); //定义大表头grid表头样式 { m_CellTitleModel = new SourceGrid.Cells.Views.Cell(); m_CellTitleModel.BackColor = Color.LightGray; m_CellTitleModel.ForeColor = Color.Black; m_CellTitleModel.TextAlignment = DevAge.Drawing.ContentAlignment.MiddleLeft; } //定义分栏表头样式 { m_Col_HeaderMode = new SourceGrid.Cells.Views.Cell(); m_Col_HeaderMode.BackColor = Color.LightGray; //背景色 m_Col_HeaderMode.ForeColor = Color.Black; //字体颜色 m_Col_HeaderMode.TextAlignment = DevAge.Drawing.ContentAlignment.MiddleCenter; } //定义分栏标题格样式 { m_Col_NameMode = new SourceGrid.Cells.Views.Cell(); m_Col_NameMode.TextAlignment = DevAge.Drawing.ContentAlignment.MiddleLeft; } //定义分栏内容格样式 { m_Col_ValMode = new SourceGrid.Cells.Views.Cell(); m_Col_ValMode.TextAlignment = DevAge.Drawing.ContentAlignment.MiddleLeft; } //只读样式cell设置 { M_Col_readonly = new SourceGrid.Cells.Views.Cell(); M_Col_readonly.ForeColor = Color.Gray; } } /// /// 初始化属性Grid相关表头 /// public void InitGridTitlet() { int firstColumnWidth = 15; //第一列的宽度 int SecondColumnWidth = 150; //设备各单元格宽度--------------------------------------------- m_frmPropCondition.PropGrid.Columns.SetWidth(0, firstColumnWidth); //设置第一列宽度 m_frmPropCondition.PropGrid.Columns.AutoSizeColumn(2); //固定进度条 //ProperyWindows的窗口宽度包括是第二列和第三列的长度总和 m_frmPropCondition.PropGrid.Columns.SetWidth(1, 150); //第二列宽度 m_frmPropCondition.PropGrid.Columns.SetWidth(2, (m_PropWindow_X - firstColumnWidth - SecondColumnWidth - 18)); //第三列宽度 } /// /// 初始化组的标题栏 iRow:GroupTitle的行号, sGroupName: GroupTitle的名字 /// /// /// public void InitGroupTitle(int iRow, String sGroupName) { if (null == m_frmPropCondition.PropGrid[iRow, 0]) { m_frmPropCondition.PropGrid[iRow, 0] = new SourceGrid.Cells.Link("-");//第一行,上面用来折叠的"-",一会点击后变成"+" m_frmPropCondition.PropGrid[iRow, 0].View = m_CellTitleModel; //设置表头的样式 //设置表头"-"按钮,点击后的事件 } if (null == m_frmPropCondition.PropGrid[iRow, 1]) { m_frmPropCondition.PropGrid[iRow, 1] = new SourceGrid.Cells.Cell(sGroupName); // 设置GroupTitle的名字 m_frmPropCondition.PropGrid[iRow, 1].View = m_CellTitleModel; m_frmPropCondition.PropGrid[iRow, 1].ColumnSpan = 2; //设置第二列与第三列合并,表头效果完成。 2:从当前列开始合并2列 } } #endregion #region 属性Grid显示相关方法 public void ShowGeneralGrid(ReportCondition conditionInfo) { if (conditionInfo.ConditionItemList.Count() == 0) return; int nGridRow = 0; string str = table["str2"].ToString(); this.InitGroupTitle(nGridRow, str); nGridRow++; int Display_Mode_Row = 1;//确定跨行样式的跨行数变量 // 设置样品Grid数据 for (int i = 0; i < conditionInfo.ConditionItemList.Count; i++) { Display_Mode_Row++; //显示样品的属性值 ConditionItem SData = conditionInfo.ConditionItemList[i]; this.SetGridCellVal(nGridRow, SData); nGridRow++; } //控制左边的竖形条框栏的显示 //第二行,第一列,为了效果美化,向下跨行,共跨m_Grid_TotleRow - 1行 if (Display_Mode_Row > 1) //有通用参数组的Grid值显示 { //获取Grid组Title所在的行号 int iCurRow = Display_Mode_Row; //第二行的时候,需要定义左边的条框栏 if (m_frmPropCondition.tabIndex == DisplayPicutureType.AnalyzeImg) { if (null == m_frmPropCondition.PropGrid[1 + 1, 0]) { m_frmPropCondition.PropGrid[1, 0] = new SourceGrid.Cells.Cell(""); m_frmPropCondition.PropGrid[1, 0].View = m_Col_HeaderMode; } else { m_frmPropCondition.PropGrid[iCurRow + 1, 0].Value = ""; } if (iCurRow == 0) { m_frmPropCondition.PropGrid[iCurRow + 1, 0].RowSpan = iCurRow + Display_Mode_Row - 1; //iCurRow + General_Totle_Row-1 : 去掉标题栏计数 } else { m_frmPropCondition.PropGrid[1, 0].RowSpan = Display_Mode_Row - 1; //iCurRow + General_Totle_Row-1 : 去掉标题栏计数 } } if (m_frmPropCondition.tabIndex == DisplayPicutureType.AnalyzeDataTable) { //第二行的时候,需要定义左边的条框栏 if (null == m_frmPropCondition.PropGrid[1 + 1, 0]) { m_frmPropCondition.PropGrid[1, 0] = new SourceGrid.Cells.Cell(""); m_frmPropCondition.PropGrid[1, 0].View = m_Col_HeaderMode; } else { m_frmPropCondition.PropGrid[iCurRow + 1, 0].Value = ""; } if (iCurRow == 0) { m_frmPropCondition.PropGrid[iCurRow + 1, 0].RowSpan = iCurRow + Display_Mode_Row - 1; //iCurRow + General_Totle_Row-1 : 去掉标题栏计数 } else { m_frmPropCondition.PropGrid[1, 0].RowSpan = Display_Mode_Row - 1; //iCurRow + General_Totle_Row-1 : 去掉标题栏计数 } } if (m_frmPropCondition.tabIndex == DisplayPicutureType.AnalyzeDataChart) { //第二行的时候,需要定义左边的条框栏 if (null == m_frmPropCondition.PropGrid[1, 0]) { m_frmPropCondition.PropGrid[1, 0] = new SourceGrid.Cells.Cell(""); m_frmPropCondition.PropGrid[1, 0].View = m_Col_HeaderMode; } else { m_frmPropCondition.PropGrid[iCurRow + 1, 0].Value = ""; } if (iCurRow == 0) { m_frmPropCondition.PropGrid[iCurRow + 1, 0].RowSpan = iCurRow + Display_Mode_Row - 1; //iCurRow + General_Totle_Row-1 : 去掉标题栏计数 } else { m_frmPropCondition.PropGrid[1, 0].RowSpan = Display_Mode_Row - 1; //iCurRow + General_Totle_Row-1 : 去掉标题栏计数 } } } } /// /// 显示Chart图表相关属性Grid /// /// public void SetPictureType(DisplayPicutureType note) { m_frmPropCondition.tabIndex = note; } public void SetGridCellVal(int Row, ConditionItem SData) { OTS_REPORT_PROP_GRID_ITEMS SampleID = SData.iItemId; String sCaptionName = SData.sSCaptionName; object SampleVal = SData.itemDisplayVal; List comboDownList = SData.comboDownList; OTS_ITEM_TYPES SampleValType = SData.iItemValType; bool bReadOnly = SData.bReadOnly; //每行的第一列显示属性名称 if (null == m_frmPropCondition.PropGrid[Row, 1]) { m_frmPropCondition.PropGrid[Row, 1] = new SourceGrid.Cells.Cell(sCaptionName); } else { m_frmPropCondition.PropGrid[Row, 1].Value = sCaptionName; } m_frmPropCondition.PropGrid[Row, 1].View = m_Col_NameMode; //每行的第二列显示属性值 if (null == m_frmPropCondition.PropGrid[Row, 2]) { switch (SData.iItemValType) { case OTS_ITEM_TYPES.COMBO: try { SourceGrid.Cells.Editors.ComboBox m_ComboboxText = null; List ValList = new List(); string[] arraySample; if (null == comboDownList) { List sSampleVal = new List(); ValList = sSampleVal; } else { ValList = (List)comboDownList; } int iValCount = ValList.Count(); if (iValCount > 0) { arraySample = new string[iValCount]; for (int i = 0; i < iValCount; i++) { arraySample[i] = ValList[i]; } } else { arraySample = new string[3] { "", "", "" }; } m_frmPropCondition.PropGrid[Row, 2] = new SourceGrid.Cells.Cell(SampleVal); m_ComboboxText = new SourceGrid.Cells.Editors.ComboBox(typeof(string), arraySample, true); m_frmPropCondition.PropGrid[Row, 2].Editor = m_ComboboxText; m_ComboboxText.Control.DropDownStyle = ComboBoxStyle.DropDownList; //设置下拉框为不可以编辑的状态 m_frmPropCondition.PropGrid[Row, 2].Value = SampleVal; m_frmPropCondition.PropGrid[Row, 2].AddController(m_ChangeCellValEvent); m_frmPropCondition.PropGrid[Row, 2].AddController(m_ValChangeEvent2); m_ComboboxText.EditableMode = EditableMode.SingleClick; } catch (Exception) { } break; case OTS_ITEM_TYPES.DOUBLE: var txtbox = new SourceGrid.Cells.Editors.TextBoxNumeric(typeof(double)); m_frmPropCondition.PropGrid[Row, 2] = new SourceGrid.Cells.Cell(SampleVal); txtbox.EditableMode = EditableMode.SingleClick; m_frmPropCondition.PropGrid[Row, 2].Editor = txtbox; m_frmPropCondition.PropGrid[Row, 2].AddController(m_ChangeCellValEvent); m_frmPropCondition.PropGrid[Row, 2].AddController(m_ValChangeEvent2); break; default: break; } if (bReadOnly) //只读模式 { m_frmPropCondition.PropGrid[Row, 2].Editor = null; m_frmPropCondition.PropGrid[Row, 2].View = M_Col_readonly;// 设置只读 } else { m_frmPropCondition.PropGrid[Row, 2].View = m_Col_ValMode; } //行绑定ID值 m_frmPropCondition.PropGrid.Rows[Row].Tag = SampleID; //数据位置绑定数据类型 m_frmPropCondition.PropGrid[Row, 2].Tag = SampleValType; } else { m_frmPropCondition.PropGrid[Row, 2].Value = SampleVal; } } #endregion #region 属性Grid与各功能模块操作等方法 /// /// 打开国标进程EXE /// private void OpenOTSINcAreportTemplateAPP(string str_path, string str_gbname) { //---------------------------------- //共传2个参数 //参数1:测量结果的路径,国标底层需要 //参数2:是打开的国标一,国标二,美标,德标,的类型 ProcessStartInfo process = new ProcessStartInfo(); //process.FileName = "ReportGBExe\\OTSIncAReportGB.exe";//打开app的路径 string arg1 = str_path.Replace(" ", "^");//参数1,测量结果的路径 string arg2 = str_gbname.Trim().Replace(" ", "^");//参数2,是打开的类型 process.Arguments = string.Format("{0} {1}", arg1, arg2); //多个参数用空格隔开 process.WindowStyle = ProcessWindowStyle.Normal; Process.Start(process); } #endregion /// /// 分发SourceGrid,各选项值改变事件 /// /// /// /// /// /// public ReportCondition ChangeSouceGrid() { //ReportCondition repCon = new ReportCondition(); bool ret = m_frmPropCondition.GetWorkingPictureConditionVal(); return m_frmPropCondition.m_SourceGridData; } /// /// SourceGrid,分析图页面组合各项方法 /// /// /// /// /// //public ReportCondition ChangeSouceGrid_Image(OTS_REPORT_PROP_GRID_ITEMS typ, string val, int sel) //{ // //ReportCondition ret = new ReportCondition(); // var ret = m_frmPropCondition.m_SourceGridDataList[0]; // //string strlist = ret.TSampleParam.sSampleTitleName; // //List list_showgrid_item = ret.TSampleRst.List_ShowGrid_Items; // //测量结果数据 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE) // { // if (val.Contains("+")) // { // ret.SetPropByPropItemName( OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE, val); // } // else // { // ResultFile resultFile = m_DataMgr.resultFilesList.Find(s => s.FileName == val); // int index = m_DataMgr.resultFilesList.IndexOf(resultFile); // m_DataMgr.WorkingResult = index; // } // } // //测量图类型 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.IMAGE_DISPLAY_TYPE) // { // } // ////--------------------------------------------------------------- // //测量图显示方式 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.IMAGE_DISPLAY_TYPE) // { // if (sel == 0)//选择分布图 // { // //strlist = ",0,2,3,7,10,13,"; // //list_showgrid_item = 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,//10 // // OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE };//13 // int displaytypeIdx = ret.GetPropIndexByPropItemName(OTS_REPORT_PROP_GRID_ITEMS.IMAGE_DISPLAY_TYPE); // if (displaytypeIdx != 0) // { // //strlist = ",0,2,3,7,10,11,12,13,"; // //list_showgrid_item = 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,//10 // //OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MIN,//11 // //OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MAX,//12 // //OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE };//13 // } // } // else if (sel == 1)//选择排序图时 // { // //strlist = ",0,2,3,4,13,"; // //list_showgrid_item = 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.MEASURE_DATA_TYPE,//4 // // OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE };//13 // } // } // //颗粒类型 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.PARTICLE_TYPE) // { // } // //测量数据 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.IMAGEGRID_DIS_TYPE) // { // if (sel == 0)//全部颗粒类型 // { // //strlist = ",0,2,3,4,13,"; // //list_showgrid_item = 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.MEASURE_DATA_TYPE,//4 // // OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE };//13 // } // else if (sel == 1)//分析颗粒类型 // { // //list_showgrid_item = 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.MEASURE_DATA_TYPE,//4 // // OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE };//13 // } // else if (sel == 2)//颗粒尺寸类型 // { // //list_showgrid_item = 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.MEASURE_DATA_TYPE,//4 // // 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 // } // } // //颗粒粒级表 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE) // { // //点击下拉框,级联联动事件 // //int idx = m_ReportApp.m_DataMgrFun.GetSampleIndexByPropItemName(m_ReportApp.SourceGridData.SampleDataList, OTSIncAReportApp.OTSSampleReportInfo.OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); // var SourceGridData = ret; // object Itmval = SourceGridData.GetItemvalByItemName(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); // List list_partsize = m_DataMgr.GetPartSizeList(m_DataMgr.m_RptConfigFile.FileFolderSize + Itmval.ToString()); // List list_partsizeChart = SourceGridData.GetComboDownListByItemName(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); // //for (int i = 0; i < ret.ConditionItemList[idx].comboDownList.Count; i++) // // list_partsizeChart.Add(ret.ConditionItemList[idx].comboDownList[i].ToString()); // string sscaptionname16 = table["sscaptionname16"].ToString(); // string sscaptionname18 = table["sscaptionname18"].ToString(); // list_partsize.Insert(0, sscaptionname16);//全部 // list_partsize.Insert(1, sscaptionname18);//自定义 // //ret.ConditionItemList[GetSampleIndexByPropItemName(ret.ConditionItemList, OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE)].itemVal = ret.ConditionItemList[idx].itemVal.ToString(); // ret.SetComboDownListByItemName( OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE, list_partsizeChart); // ret.SetComboDownListByItemName( OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS, list_partsize); // m_DataMgr.m_RptConfigFile.PartSizeFile = ret.GetItemvalByItemName(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); // } // //粒级 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS) // { // switch (sel) // { // case 0: // //list_showgrid_item.Remove(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MIN);//11 // //list_showgrid_item.Remove(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MAX);//12 // break; // case 1: // //if (!list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MIN)) // //{ // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MIN);//11 // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MAX);//12 // //} // var idx = ret.GetPropIndexByPropItemName(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MIN); // ret.ConditionItemList[idx].bReadOnly = false; // var idx1= ret.GetPropIndexByPropItemName(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MAX); // ret.ConditionItemList[idx].itemDisplayVal = "0"; // ret.ConditionItemList[idx1].bReadOnly = false; // ret.ConditionItemList[idx1].itemDisplayVal = "0"; // break; // default: // //if (!list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MIN)) // //{ // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MIN);//11 // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MAX);//12 // //} // string[] v = ret.ConditionItemList[5].itemDisplayVal.ToString().Split('~'); // var idx2 = ret.GetPropIndexByPropItemName(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MIN); // var idx3 = ret.GetPropIndexByPropItemName(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_MAX); // ret.ConditionItemList[idx2].bReadOnly = true; // ret.ConditionItemList[idx2].itemDisplayVal = v[0]; // ret.ConditionItemList[idx3].bReadOnly = true; // ret.ConditionItemList[idx3].itemDisplayVal = v[1]; // break; // } // } // //尺寸计算法 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE) // { // } // //ret.TSampleParam.sSampleTitleName = strlist; // //ret.TSampleRst.List_ShowGrid_Items = list_showgrid_item; // //ret = FilterData(ret); // return ret; //} ///// ///// SourceGrid,Grid表格部份组合各项方法 ///// ///// ///// ///// ///// //public ReportCondition ChangeSouceGrid_Grid(OTS_REPORT_PROP_GRID_ITEMS typ, string val, int sel) //{ // //ReportCondition ret = new ReportCondition(); // var ret = m_frmPropCondition.m_SourceGridDataList[1]; // //string strlist = ret.TSampleParam.sSampleTitleName; // //List list_showgrid_item = ret.TSampleRst.List_ShowGrid_Items; // //测量结果数据 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE) // { // if (val.Contains("+")) // { // ret.SetPropByPropItemName( OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE, val); // } // else // { // DataOperation.Model.ResultFile resultFile = m_DataMgr.resultFilesList.Find(s => s.FileName == val); // int index = m_DataMgr.resultFilesList.IndexOf(resultFile); // m_DataMgr.WorkingResult = index; // } // } // //数据类型 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE) // { // } // //数据表类型 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.CALCULATE_TABLE_TYPE) // { // switch (sel) // { // case 2://颗粒成份 // //if (!list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE))//13 // //{ // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE); // //} // //list_showgrid_item.Remove(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE);//9 // break; // case 4://颗粒尺寸分布 // //if (!list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE))//9 // //{ // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); // //} // //if (!list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE))//13 // //{ // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE); // //} // break; // default://其它Grid模块不需要,粒级表和尺寸计算法 // //list_showgrid_item.Remove(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE);//9 // //list_showgrid_item.Remove(OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE);//13 // break; // } // } // //颗粒粒级表 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE) // { // m_DataMgr.m_RptConfigFile.PartSizeFile = ret.GetItemvalByItemName( OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); // } // //尺寸计算方法 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE) // { // } // //ret.TSampleParam.sSampleTitleName = strlist; // //ret.TSampleRst.List_ShowGrid_Items = list_showgrid_item; // //ret = FilterData(ret); // return ret; //} ///// ///// SourceGrid,Chart图表部份组合各项方法 ///// ///// ///// ///// ///// //public ReportCondition ChangeSouceGrid_Chart(OTS_REPORT_PROP_GRID_ITEMS typ, string val, int sel) //{ // ReportCondition ret = new ReportCondition(); // ret = m_frmPropCondition.m_SourceGridDataList[2]; // //string strlist = ret.TSampleParam.sSampleTitleName; // //List list_showgrid_item = ret.TSampleRst.List_ShowGrid_Items; // //测量结果数据 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE) // { // if (val.Contains("+")) // { // //ret.SampleDataList[1].bReadOnly = true; // //ret.SampleDataList[1].itemVal = ret.SampleDataList[GetSampleIndexByPropItemName(ret.SampleDataList, OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE)].comboDownList[0]; // ret.ConditionItemList[0].itemDisplayVal = val; // } // else // { // //ret.SampleDataList[1].bReadOnly = false; // DataOperation.Model.ResultFile resultFile = m_DataMgr.resultFilesList.Find(s => s.FileName == val); // int index = m_DataMgr.resultFilesList.IndexOf(resultFile); // m_DataMgr.WorkingResult = index; // } // } // //数据类型 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.DATA_SOURCE_TYPE) // { // } // //数据图类型 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.CALCULATE_CHART_TYPE) // { // switch (sel) // { // case 4://三元相图 // //if (!list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE) && !list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE) && !list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE)) // //{ // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE); // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE);//15 // //} // //else if (!list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE)) // //{ // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE);//15 // //} // break; // case 3://颗粒尺寸分布图 // //if (!list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE))//9 // //{ // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); // //} // //if (!list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE))//13 // //{ // // list_showgrid_item.Add(OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE); // //} // //if (list_showgrid_item.Contains(OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE))//15 // //{ // // list_showgrid_item.Remove(OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE); // //} // break; // default: // //list_showgrid_item.Remove(OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); // //list_showgrid_item.Remove(OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE);//15 // break; // } // } // //三元相图模板 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.TRIO_CHART_TYPE) // { // } // //颗粒种类 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.PARTICLE_TYPE) // { // } // //颗粒粒级表 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE) // { // m_DataMgr.m_RptConfigFile.PartSizeFile = ret.GetItemvalByItemName( OTS_REPORT_PROP_GRID_ITEMS.GRAIN_SIZE_CLASS_TABLE); // } // //尺寸计算方法 // if (typ == OTS_REPORT_PROP_GRID_ITEMS.SIZE_CAL_METHOD_TYPE) // { // } // //ret.TSampleParam.sSampleTitleName = strlist; // //ret.TSampleRst.List_ShowGrid_Items = list_showgrid_item; // //ret = FilterData(ret); // return ret; //} } }