示例#1
0
文件: HSSFChart.cs 项目: 89sos98/npoi
		private Integer SetVerticalCellRange(LinkedDataRecord linkedDataRecord,
				                             CellRangeAddressBase range) {
			if (linkedDataRecord == null)
			{
				return null;
			}
			
			List<Ptg> ptgList = new ArrayList<Ptg>();
			
			int rowCount = (range.GetLastRow() - range.GetFirstRow()) + 1;
			int colCount = (range.GetLastColumn() - range.GetFirstColumn()) + 1;
			
			for (Ptg ptg : linkedDataRecord.GetFormulaOfLink()) {
				if (ptg is AreaPtgBase) {
					AreaPtgBase areaPtg = (AreaPtgBase) ptg;
					
					areaPtg.SetFirstRow(range.GetFirstRow());
					areaPtg.SetLastRow(range.GetLastRow());
					
					areaPtg.SetFirstColumn(range.GetFirstColumn());
					areaPtg.SetLastColumn(range.GetLastColumn());
					ptgList.Add(areaPtg);
				}
			}
			
			linkedDataRecord.SetFormulaOfLink(ptgList.ToArray(new Ptg[ptgList.Size()]));
			
			return rowCount * colCount;
		}
示例#2
0
文件: HSSFChart.cs 项目: 89sos98/npoi
		private CellRangeAddressBase GetCellRange(LinkedDataRecord linkedDataRecord) {
			if (linkedDataRecord == null)
			{
				return null ;
			}
			
			int firstRow = 0;
			int lastRow = 0;
			int firstCol = 0;
			int lastCol = 0;
			
			for (Ptg ptg : linkedDataRecord.GetFormulaOfLink()) {
				if (ptg is AreaPtgBase) {
					AreaPtgBase areaPtg = (AreaPtgBase) ptg;
					
					firstRow = areaPtg.GetFirstRow();
					lastRow = areaPtg.GetLastRow();
					
					firstCol = areaPtg.GetFirstColumn();
					lastCol = areaPtg.GetLastColumn();
				}
			}
			
			return new CellRangeAddress(firstRow, lastRow, firstCol, lastCol);
		}