コード例 #1
0
        private void AddValue(string key, Page9_13_3Value value)
        {
            List <Page9_13_3Value> values = null;

            if (data.ContainsKey(key))
            {
                values = data[key] as List <Page9_13_3Value>;
                if (values == null)
                {
                    values    = new List <Page9_13_3Value>();
                    data[key] = values;
                }
            }
            else
            {
                values = new List <Page9_13_3Value>();
                data.Add(key, values);
            }
            values.Add(value);
        }
コード例 #2
0
        private void ReadData()
        {
            Hashtable columnHeader = new Hashtable();

            Office.Excel.ForwardReadWorksheet sheet = base.Sheet;
            object content;

            if (sheet.ReadNextRow())
            {
                while (sheet.ReadNextCell(false))
                {
                    content = sheet.GetContent();
                    columnHeader.Add(sheet.CurrentCell.ColumnIndex, content == null ? "" : content.ToString());
                }
            }
            Page9_13_3Value value = null;
            string          lastKey = "", fixedPoint, fixedPointPos;

            while (sheet.ReadNextRow())
            {
                if (value == null)
                {
                    value = new Page9_13_3Value();
                }
                string key = "";
                fixedPointPos = "";
                fixedPoint    = "";
                while (sheet.ReadNextCell(false))
                {
                    content = sheet.GetContent();
                    string str = content == null ? "" : content.ToString();
                    //第几排座椅	座椅位置	固定点	固定点位置	车辆结构(例如:车身地板)	座椅结构(例如:座椅骨架)
                    switch (columnHeader[sheet.CurrentCell.ColumnIndex] as string)
                    {
                    case "座椅位置":
                        if (string.IsNullOrEmpty(value.SeatPosition))
                        {
                            value.SeatPosition = str;
                        }
                        else if (value.SeatPosition != str) // 座椅位置更改时保存当前读取的填报数据。
                        {
                            AddValue(lastKey, value);
                            value = new Page9_13_3Value();
                            value.SeatPosition = str;
                        }
                        break;

                    case "固定点":
                        fixedPoint = str;
                        break;

                    case "固定点位置":
                        fixedPointPos = str;
                        break;

                    case "车辆结构(例如:车身地板)":
                        switch (fixedPoint)
                        {
                        case "上":
                            value.CarStruct_UFP = str;
                            break;

                        case "下":
                            switch (fixedPointPos)
                            {
                            case "外侧":
                                value.CarStructOuterSide_DFP = str;
                                break;

                            case "内侧":
                                value.CarStructInnerSide_DFP = str;
                                break;
                            }
                            break;
                        }
                        break;

                    case "座椅结构(例如:座椅骨架)":
                        switch (fixedPoint)
                        {
                        case "上":
                            value.SeatStruct_UFP = str;
                            break;

                        case "下":
                            switch (fixedPointPos)
                            {
                            case "外侧":
                                value.SeatStructOuterSide_DFP = str;
                                break;

                            case "内侧":
                                value.SeatStructInnerSide_DFP = str;
                                break;
                            }
                            break;
                        }
                        break;

                    case "第几排座椅":
                        if (string.IsNullOrEmpty(lastKey))// 新增座椅时保存当前读取的填报数据。
                        {
                            key     = str;
                            lastKey = key;
                        }
                        else if (lastKey != str)
                        {
                            AddValue(lastKey, value);
                            value   = new Page9_13_3Value();
                            key     = str;
                            lastKey = key;
                        }
                        break;
                    }
                }
                if (key == null)
                {
                    continue;
                }
            }
        }
コード例 #3
0
 private void FillValue(string key, IntPtr rowNumber, Page9_13_3_Relation relation, Page9_13_3Value value)
 {
     if (ApiSetter.SetComboBoxSelected(base.HWnd, rowNumber, key) == false)
     {
         return;
     }
     ApiSetter.SetText(relation.CarStructOuterSide_DFP, value.CarStructOuterSide_DFP);
     ApiSetter.SetText(relation.SeatStructOuterSide_DFP, value.SeatStructOuterSide_DFP);
     ApiSetter.SetText(relation.CarStructInnerSide_DFP, value.CarStructInnerSide_DFP);
     ApiSetter.SetText(relation.SeatStructInnerSide_DFP, value.SeatStructInnerSide_DFP);
     if (string.IsNullOrEmpty(value.CarStruct_UFP) && string.IsNullOrEmpty(value.SeatStruct_UFP))
     {
         ApiSetter.ClickButton(relation.UpperFixedPoint, base.HWnd, null, null);  // 上固定点不适用
     }
     else
     {
         long style = NativeApi.GetWindowLong(relation.CarStruct_UFP, -16);
         if ((style & WindowStyles.WS_DISABLED) == WindowStyles.WS_DISABLED)
         {
             ApiSetter.ClickButton(relation.UpperFixedPoint, base.HWnd, null, null);
         }
         ApiSetter.SetText(relation.CarStruct_UFP, value.CarStruct_UFP);
         ApiSetter.SetText(relation.SeatStruct_UFP, value.SeatStruct_UFP);
     }
 }