private void DoSigelRowGroup(GroupConfig config) { int rowFrom = CurrentRow + 1; int rowTo = CurrentRow + 1; int rowOffset = 0; int rowEnd = RowFrom; string childRows; if (config.FromRow > -1) { rowFrom = config.FromRow; } if (config.ToRow > -1) { rowTo = config.ToRow; } if (!string.IsNullOrEmpty(config.ColumnField)) { childRows = SheetData[config.ColumnField] + ""; rowOffset = GetMaxOffet(childRows); } rowOffset += RowFrom; rowOffset += 1; rowTo = Math.Max(rowTo, rowOffset); if (rowFrom < rowTo) { HssSheet.GroupRow(rowFrom, rowTo); } }
private void DoSigelGroupDispacher(GroupConfig config) { if (config.GroupType == GroupConfig.RowGroupType) { DoSigelRowGroup(config); } else { DoSigelColumnGroup(config); } }
private GroupConfig PareseSigleConfig(XmlNode node) { GroupConfig config = new GroupConfig(); string groupType = XmlUtility.getNodeAttributeStringValue(node, "type"); if (string.IsNullOrEmpty(groupType)) { throw new ArgumentException("Group配置节中的type不能为空"); } else if (string.Compare(groupType, RowGroupType, true) == 0) { config.GroupType = GroupConfig.RowGroupType; } else if (string.Compare(groupType, ColumnGroupType, true) == 0) { config.GroupType = GroupConfig.ColumnGroupType; } string areaID = XmlUtility.getNodeAttributeStringValue(node, "AreaID"); if (string.IsNullOrEmpty(areaID)) { throw new ArgumentException("Merged配置项中AreaID无效"); } config.AreaId = areaID; string fromColumn = XmlUtility.getNodeAttributeStringValue(node, "FromColumn"); config.FromColumn = (short)ParseStringToInt(fromColumn); string fromRow = XmlUtility.getNodeAttributeStringValue(node, "FromRow"); config.FromRow = ParseStringToInt(fromRow); string toColumn = XmlUtility.getNodeAttributeStringValue(node, "ToColumn"); config.ToColumn = (short)ParseStringToInt(toColumn); string toRow = XmlUtility.getNodeAttributeStringValue(node, "ToRow"); config.ToRow = ParseStringToInt(toRow); string groupField = XmlUtility.getNodeAttributeStringValue(node, ColumnField); config.ColumnField = groupField; return(config); }
private void DoSigelColumnGroup(GroupConfig config) { HssSheet.GroupColumn(config.FromColumn, config.ToColumn); }