本文整理汇总了C#中DocumentFormat.OpenXml.Packaging.WorkbookPart.AddNewPart方法的典型用法代码示例。如果您正苦于以下问题:C# WorkbookPart.AddNewPart方法的具体用法?C# WorkbookPart.AddNewPart怎么用?C# WorkbookPart.AddNewPart使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DocumentFormat.OpenXml.Packaging.WorkbookPart
的用法示例。
在下文中一共展示了WorkbookPart.AddNewPart方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: LogGenerator
private WorksheetPart wsSheet = null; // WorkSheetPart
#endregion Fields
#region Constructors
public LogGenerator(string fn)
{
//// get spreadsheet path from constructor
//path = folder;
//// File name is based on date and time
//DateTime now = DateTime.Now;
//// Construct the spreadsheet filename
//string fn = string.Format("{0}\\report_{1}-{2}-{3}_{4}{5}{6}.xlsx",
// path, now.Year, now.Month, now.Day, now.Hour, now.Minute, now.Second);
if (File.Exists(fn))
{
doc = SpreadsheetDocument.Open(fn, true);
}
else
{
//
// Create the Spreadsheet document
//
doc = SpreadsheetDocument.Create(fn, SpreadsheetDocumentType.Workbook);
//
// Add WoorkBookPart to the document
//
wbPart = doc.AddWorkbookPart();
wbPart.Workbook = new Workbook();
wbPart.Workbook.AddNamespaceDeclaration("x", "http://schemas.openxmlformats.org/spreadsheetml/2006/main");
//
// Add WorkSheetPart to the WorkBookPart
//
wsSheet = wbPart.AddNewPart<WorksheetPart>();
wsSheet.Worksheet = new Worksheet(new SheetData());
wsSheet.Worksheet.AddNamespaceDeclaration("x", "http://schemas.openxmlformats.org/spreadsheetml/2006/main");
//
// Add sheets to the WorkBook
//
sheets = doc.WorkbookPart.Workbook.AppendChild<Sheets>(new Sheets());
//
// Append new sheet and associate it with the workbook
//
sheet = new Sheet() { Id = doc.WorkbookPart.GetIdOfPart(wsSheet), SheetId = 1, Name = wsName };
sheet.AddNamespaceDeclaration("r", "http://schemas.openxmlformats.org/officeDocument/2006/relationships");
sheets.Append(sheet);
wbPart.Workbook.Save();
//CreatePackage(fn);
//if (File.Exists(fn))
//{
// TestXls();
//}
}
}
示例2: Save
public override void Save(ResearchResult result)
{
if (!Directory.Exists(storageStr))
{
Directory.CreateDirectory(storageStr);
}
string fileName = storageStr + result.ResearchName;
if (File.Exists(fileName + ".xls") || File.Exists(fileName + ".xlsx"))
fileName += result.ResearchID;
document = SpreadsheetDocument.Create(fileName + ".xlsx", SpreadsheetDocumentType.Workbook);
workbook = document.AddWorkbookPart();
workbook.Workbook = new Workbook();
// Add a WorksheetPart to the WorkbookPart.
WorksheetPart worksheetPart = workbook.AddNewPart<WorksheetPart>();
worksheetPart.Worksheet = new Worksheet(new SheetData());
// Add Sheets to the Workbook.
Sheets sheets = document.WorkbookPart.Workbook.
AppendChild<Sheets>(new Sheets());
// Append a new worksheet and associate it with the workbook.
Sheet sheet = new Sheet()
{
Id = document.WorkbookPart.
GetIdOfPart(worksheetPart),
SheetId = 1,
Name = "mySheet"
};
sheets.Append(sheet);
/*SaveResearchInfo(result.ResearchID, result.ResearchName,
result.ResearchType, result.ModelType, result.RealizationCount,
result.Size, result.Edges);
SaveResearchParameters(result.ResearchParameterValues);
SaveGenerationParameters(result.GenerationParameterValues);
for (int i = 0; i < result.EnsembleResults.Count; ++i)
{
SaveEnsembleResult(result.EnsembleResults[i], i);
}*/
workbook.Workbook.Save();
document.Close();
}
示例3: CreateSheet
public void CreateSheet(Sheets sheets, SpreadsheetDocument spreadsheetDocument, WorkbookPart workbookPart)
{
// Add a WorksheetPart to the WorkbookPart.
WorksheetPart worksheetPart = workbookPart.AddNewPart<WorksheetPart>();
worksheetPart.Worksheet = new Worksheet(new SheetData());
Sheet sheet = new Sheet
{
Id = spreadsheetDocument.WorkbookPart.GetIdOfPart(worksheetPart),
SheetId = 4U,
Name = _resources.SheetName
};
sheets.Append(sheet);
//Add cells to the sheet
InsertTextIntoCells(spreadsheetDocument, worksheetPart);
}
示例4: CreateSheet
/// <summary>
/// Creates the sheet
/// </summary>
/// <param name="sheets">The sheet for this item</param>
/// <param name="spreadsheetDocument">The spreadsheet containing the sheets</param>
/// <param name="workbookPart">The workbookpart associated with the spreadsheet</param>
public void CreateSheet(Sheets sheets, SpreadsheetDocument spreadsheetDocument, WorkbookPart workbookPart)
{
// Add a WorksheetPart to the WorkbookPart.
WorksheetPart worksheetPart = workbookPart.AddNewPart<WorksheetPart>();
worksheetPart.Worksheet = new Worksheet(new SheetData());
Sheet sheet = new Sheet
{
Id = spreadsheetDocument.WorkbookPart.GetIdOfPart(worksheetPart),
SheetId = 3U, // <-- Change for each sheet that is created
Name = _groupOrder.SheetName
};
sheets.Append(sheet);
//Add cells to the sheet
InsertTextIntoCells(spreadsheetDocument, worksheetPart);
}
示例5: AddSheet
public Worksheet AddSheet(WorkbookPart workbookPart, string name)
{
var sheets = workbookPart.Workbook.GetFirstChild<Sheets>();
// add single Sheet
var workSheetpart = workbookPart.AddNewPart<WorksheetPart>();
workSheetpart.Worksheet = new Worksheet(new SheetData());
workSheetpart.Worksheet.Save();
var sheet = new Sheet
{
Id = workbookPart.GetIdOfPart(workSheetpart),
SheetId = (uint)(workbookPart.Workbook.Sheets.Count() + 1),
Name = name
};
sheets.Append(sheet);
workbookPart.Workbook.Save();
return workSheetpart.Worksheet;
}
示例6: GenerateCalculationChainPartContent
private void GenerateCalculationChainPartContent(WorkbookPart workbookPart, SaveContext context)
{
var thisRelId = context.RelIdGenerator.GetNext(RelType.Workbook);
if (workbookPart.CalculationChainPart == null)
workbookPart.AddNewPart<CalculationChainPart>(thisRelId);
if (workbookPart.CalculationChainPart.CalculationChain == null)
workbookPart.CalculationChainPart.CalculationChain = new CalculationChain();
var calculationChain = workbookPart.CalculationChainPart.CalculationChain;
calculationChain.RemoveAllChildren<CalculationCell>();
foreach (var worksheet in WorksheetsInternal)
{
var cellsWithoutFormulas = new HashSet<String>();
foreach (var c in worksheet.Internals.CellsCollection.GetCells())
{
if (XLHelper.IsNullOrWhiteSpace(c.FormulaA1))
cellsWithoutFormulas.Add(c.Address.ToStringRelative());
else
{
if (c.FormulaA1.StartsWith("{"))
{
var cc = new CalculationCell
{
CellReference = c.Address.ToString(),
SheetId = worksheet.SheetId
};
if (c.FormulaReference.FirstAddress.Equals(c.Address))
{
cc.Array = true;
calculationChain.AppendChild(cc);
calculationChain.AppendChild(new CalculationCell {CellReference = c.Address.ToString(), InChildChain = true});
}
else
{
calculationChain.AppendChild(cc);
}
}
else
{
calculationChain.AppendChild(new CalculationCell
{
CellReference = c.Address.ToString(),
SheetId = worksheet.SheetId
});
}
}
}
//var cCellsToRemove = new List<CalculationCell>();
var m = from cc in calculationChain.Elements<CalculationCell>()
where !(cc.SheetId != null || cc.InChildChain != null)
&& calculationChain.Elements<CalculationCell>()
.Where(c1 => c1.SheetId != null)
.Select(c1 => c1.CellReference.Value)
.Contains(cc.CellReference.Value)
|| cellsWithoutFormulas.Contains(cc.CellReference.Value)
select cc;
//m.ToList().ForEach(cc => cCellsToRemove.Add(cc));
m.ToList().ForEach(cc => calculationChain.RemoveChild(cc));
}
if (!calculationChain.Any())
workbookPart.DeletePart(workbookPart.CalculationChainPart);
}
示例7: InsertWorksheet
//private static void AddTextToWorkSheet(string path, string sheetName, string text, string columnName, uint rowIndex)
//{
// // Open the document for editing.
// using (SpreadsheetDocument spreadSheet = SpreadsheetDocument.Open(path, true))
// {
// // Get the SharedStringTablePart. If it does not exist, create a new one.
// SharedStringTablePart shareStringPart;
// if (spreadSheet.WorkbookPart.GetPartsOfType<SharedStringTablePart>().Count() > 0)
// {
// shareStringPart = spreadSheet.WorkbookPart.GetPartsOfType<SharedStringTablePart>().First();
// }
// else
// {
// shareStringPart = spreadSheet.WorkbookPart.AddNewPart<SharedStringTablePart>();
// }
// // Insert the text into the SharedStringTablePart.
// int index = InsertSharedStringItem(spreadSheet.WorkbookPart, text);
// // Insert a new worksheet.
// WorksheetPart worksheetPart = InsertWorksheet(spreadSheet.WorkbookPart, sheetName);
// // Insert cell A1 into the new worksheet.
// Cell cell = InsertCellInWorksheet(worksheetPart, columnName, rowIndex);
// // Set the value of cell A1.
// cell.CellValue = new CellValue(index.ToString());
// cell.DataType = new EnumValue<CellValues>(CellValues.SharedString);
// // Save the new worksheet.
// worksheetPart.Worksheet.Save();
// }
//}
public static WorksheetPart InsertWorksheet(WorkbookPart workbookPart, string sheetName)
{
Sheet foundSheet = workbookPart.Workbook.Sheets.Cast<Sheet>().FirstOrDefault(sheet => sheet.Name == sheetName);
if (foundSheet == null)
{
// Add a new worksheet part to the workbook.
var newWorksheetPart = workbookPart.AddNewPart<WorksheetPart>();
newWorksheetPart.Worksheet = new Worksheet(new SheetData());
newWorksheetPart.Worksheet.Save();
var sheets = workbookPart.Workbook.GetFirstChild<Sheets>();
string relationshipId = workbookPart.GetIdOfPart(newWorksheetPart);
// Get a unique ID for the new sheet.
uint sheetId = 1;
if (sheets.Elements<Sheet>().Count() > 0)
{
sheetId = sheets.Elements<Sheet>().Select(s => s.SheetId.Value).Max() + 1;
}
// Append the new worksheet and associate it with the workbook.
var sheet = new Sheet { Id = relationshipId, SheetId = sheetId, Name = sheetName };
sheets.Append((IEnumerable<OpenXmlElement>)sheet);
return newWorksheetPart;
}
return (WorksheetPart)workbookPart.GetPartById(foundSheet.Id);
}
示例8: InsertWorksheet
// Given a WorkbookPart, inserts a new worksheet.
private WorksheetPart InsertWorksheet(WorkbookPart workbookPart)
{
// We need single sheet only, if there is a sheet, return
if (workbookPart.WorksheetParts.Count() > 0)
{
return workbookPart.WorksheetParts.FirstOrDefault<WorksheetPart>();
}
// Add a new worksheet part to the workbook.
WorksheetPart newWorksheetPart = workbookPart.AddNewPart<WorksheetPart>();
newWorksheetPart.Worksheet = new Worksheet(new SheetData());
newWorksheetPart.Worksheet.Save();
Sheets sheets = workbookPart.Workbook.GetFirstChild<Sheets>();
string relationshipId = workbookPart.GetIdOfPart(newWorksheetPart);
// Get a unique ID for the new sheet.
uint sheetId = 1;
if (sheets.Elements<Sheet>().Count() > 0)
{
sheetId = sheets.Elements<Sheet>().Select(s => s.SheetId.Value).Max() + 1;
}
string sheetName = "Sheet" + sheetId;
// Append the new worksheet and associate it with the workbook.
Sheet sheet = new Sheet() { Id = relationshipId, SheetId = sheetId, Name = sheetName };
sheets.Append(sheet);
workbookPart.Workbook.Save();
return newWorksheetPart;
}
示例9: GeneratePivotTables
//.........这里部分代码省略.........
// categoryAxisData1.AppendChild(stringReference2);
// C.Values values1 = new C.Values();
// C.NumberReference numberReference1 = new C.NumberReference();
// C.Formula formula3 = new C.Formula();
// formula3.Text = "Sheet1!$B$2:$B$3";
// C.NumberingCache numberingCache1 = new C.NumberingCache();
// C.FormatCode formatCode1 = new C.FormatCode();
// formatCode1.Text = "General";
// C.PointCount pointCount3 = new C.PointCount() { Val = (UInt32Value)2U };
// C.NumericPoint numericPoint1 = new C.NumericPoint() { Index = (UInt32Value)0U };
// C.NumericValue numericValue4 = new C.NumericValue();
// numericValue4.Text = "5";
// numericPoint1.AppendChild(numericValue4);
// C.NumericPoint numericPoint2 = new C.NumericPoint() { Index = (UInt32Value)1U };
// C.NumericValue numericValue5 = new C.NumericValue();
// numericValue5.Text = "10";
// numericPoint2.AppendChild(numericValue5);
// numberingCache1.AppendChild(formatCode1);
// numberingCache1.AppendChild(pointCount3);
// numberingCache1.AppendChild(numericPoint1);
// numberingCache1.AppendChild(numericPoint2);
// numberReference1.AppendChild(formula3);
// numberReference1.AppendChild(numberingCache1);
// values1.AppendChild(numberReference1);
// barChartSeries.AppendChild(index1);
// barChartSeries.AppendChild(order1);
// barChartSeries.AppendChild(seriesText1);
// barChartSeries.AppendChild(categoryAxisData1);
// barChartSeries.AppendChild(values1);
// C.Shape shape1 = new C.Shape() { Val = C.ShapeValues.Box };
// C.AxisId axisId1 = new C.AxisId() { Val = (UInt32Value)71429120U };
// C.AxisId axisId2 = new C.AxisId() { Val = (UInt32Value)71432064U };
// C.AxisId axisId3 = new C.AxisId() { Val = (UInt32Value)0U };
// bar3DChart.AppendChild(barChartSeries);
// bar3DChart.AppendChild(shape1);
// bar3DChart.AppendChild(axisId1);
// bar3DChart.AppendChild(axisId2);
// bar3DChart.AppendChild(axisId3);
// return bar3DChart;
//}
//private C.BarGroupingValues GetBarGrouping(XLChart xlChart)
//{
// if (xlChart.BarGrouping == XLBarGrouping.Clustered)
// return C.BarGroupingValues.Clustered;
// else if (xlChart.BarGrouping == XLBarGrouping.Percent)
// return C.BarGroupingValues.PercentStacked;
// else if (xlChart.BarGrouping == XLBarGrouping.Stacked)
// return C.BarGroupingValues.Stacked;
// else
// return C.BarGroupingValues.Standard;
//}
//private C.BarDirectionValues GetBarDirection(XLChart xlChart)
//{
// if (xlChart.BarOrientation == XLBarOrientation.Vertical)
// return C.BarDirectionValues.Column;
// else
// return C.BarDirectionValues.Bar;
//}
//--
private static void GeneratePivotTables(WorkbookPart workbookPart, WorksheetPart worksheetPart,
XLWorksheet xlWorksheet,
SaveContext context)
{
foreach (var pt in xlWorksheet.PivotTables)
{
var ptCdp = context.RelIdGenerator.GetNext(RelType.Workbook);
var pivotTableCacheDefinitionPart = workbookPart.AddNewPart<PivotTableCacheDefinitionPart>(ptCdp);
GeneratePivotTableCacheDefinitionPartContent(pivotTableCacheDefinitionPart, pt);
var pivotCaches = new PivotCaches();
var pivotCache = new PivotCache {CacheId = 0U, Id = ptCdp};
pivotCaches.AppendChild(pivotCache);
workbookPart.Workbook.AppendChild(pivotCaches);
var pivotTablePart =
worksheetPart.AddNewPart<PivotTablePart>(context.RelIdGenerator.GetNext(RelType.Workbook));
GeneratePivotTablePartContent(pivotTablePart, pt);
pivotTablePart.AddPart(pivotTableCacheDefinitionPart, context.RelIdGenerator.GetNext(RelType.Workbook));
}
}
示例10: InsertSharedStringItem
// Given the main workbook part, and a text value, insert the text into
// the shared string table. Create the table if necessary. If the value
// already exists, return its index. If it doesn't exist, insert it and
// return its new index.
internal static int InsertSharedStringItem(WorkbookPart wbPart, string value)
{
int index = 0;
bool found = false;
var stringTablePart = wbPart
.GetPartsOfType<SharedStringTablePart>().FirstOrDefault();
// If the shared string table is missing, something's wrong.
// Just return the index that you found in the cell.
// Otherwise, look up the correct text in the table.
if (stringTablePart == null)
{
// Create it.
stringTablePart = wbPart.AddNewPart<SharedStringTablePart>();
}
var stringTable = stringTablePart.SharedStringTable;
if (stringTable == null)
{
stringTable = new SharedStringTable();
stringTablePart.SharedStringTable = stringTable;
}
// Iterate through all the items in the SharedStringTable.
// If the text already exists, return its index.
foreach (SharedStringItem item in stringTable.Elements<SharedStringItem>())
{
if (item.InnerText == value)
{
found = true;
break;
}
index += 1;
}
if (!found)
{
stringTable.AppendChild(new SharedStringItem(new DocumentFormat.OpenXml.Spreadsheet.Text(value)));
stringTable.Save();
}
return index;
}
示例11: InsertWorksheet
private static WorksheetPart InsertWorksheet(WorkbookPart workbookPart, string sheetName)
{
Sheet foundSheet = null;
foreach (Sheet sheet in workbookPart.Workbook.Sheets)
{
if (sheet.Name == sheetName)
{
foundSheet = sheet;
break;
}
}
if (foundSheet == null)
{
// Add a new worksheet part to the workbook.
WorksheetPart newWorksheetPart = workbookPart.AddNewPart<WorksheetPart>();
newWorksheetPart.Worksheet = new Worksheet(new SheetData());
newWorksheetPart.Worksheet.Save();
Sheets sheets = workbookPart.Workbook.GetFirstChild<Sheets>();
string relationshipId = workbookPart.GetIdOfPart(newWorksheetPart);
// Get a unique ID for the new sheet.
uint sheetId = 1;
if (sheets.Elements<Sheet>().Count() > 0)
{
sheetId = sheets.Elements<Sheet>().Select(s => s.SheetId.Value).Max() + 1;
}
// Append the new worksheet and associate it with the workbook.
Sheet sheet = new Sheet() { Id = relationshipId, SheetId = sheetId, Name = sheetName };
sheets.Append(sheet);
workbookPart.Workbook.Save();
return newWorksheetPart;
}
else
{
return (WorksheetPart)workbookPart.GetPartById(foundSheet.Id);
}
}
示例12: insertSharedStringItem
//
// Insert the string into the shared string table of the WorkBookPart
//
private int insertSharedStringItem(WorkbookPart wbPart, string Value)
{
//
// Look if the string already exists into the SharedStringTable, if it does return it
// else return a new one
//
int index = 0;
bool found = false;
//
// If the shared string table is missing, something's wrong.
// Just return the index that you found in the cell.
// Otherwise, look up the correct text in the table.
//
var stringTablePart = wbPart.GetPartsOfType<SharedStringTablePart>().FirstOrDefault();
if (stringTablePart == null)
{
// Create a new SharedString
stringTablePart = wbPart.AddNewPart<SharedStringTablePart>();
}
var stringTable = stringTablePart.SharedStringTable;
if (stringTable == null)
{
stringTable = new SharedStringTable();
}
//
// Iterate through all the items in the SharedStringTable.
// If the text already exists, return its index.
//
foreach (SharedStringItem item in stringTable.Elements<SharedStringItem>())
{
if (item.InnerText == Value)
{
found = true;
break;
}
index++;
}
//
// if not found append a new SharedString to the table
//
if (!found)
{
stringTable.AppendChild(new SharedStringItem(new Text(Value)));
try
{
stringTable.Save();
}
catch (Exception) { }
}
return index;
}
示例13: GenerateServiceOrder
/// <summary>
/// Generate service order report
/// </summary>
/// <param name="itemsource">Item source</param>
/// <param name="workbookPart">Worbook part</param>
private static void GenerateServiceOrder(ExportInspectionReportsModel itemsource, WorkbookPart workbookPart, Sheets sheets,int sheetId,string logoPath)
{
if (itemsource.IsSelectedServiceOrder)
{
// Remove the sheet reference from the workbook.
WorksheetPart worksheetPart = workbookPart.AddNewPart<WorksheetPart>();
// The SheetData object will contain all the data.
SheetData sheetData = new SheetData();
Worksheet worksheet = new Worksheet();
Form serviceOrder = itemsource.ServiceOrderData;
Row rowTitle;
//get the string name of the columns
string[] excelColumnNamesTitle = new string[9];
for (int n = 0; n < 9; n++)
excelColumnNamesTitle[n] = GetExcelColumnName(n);
//build the title
for (int i = 1; i <= 6; i++)
{
rowTitle = new Row() { RowIndex = (UInt32Value)(uint)i };
for (int cellval = 0; cellval < 9; cellval++)
{
AppendTextCell(excelColumnNamesTitle[cellval] + i, string.Empty, rowTitle, 3);
}
sheetData.Append(rowTitle);
}
MergeCells mergeCells = new MergeCells();
Row currentRowTitle = sheetData.Elements<Row>().FirstOrDefault(row => row.RowIndex.Value == (uint)2);
//add the business application name
UpdateStringCellValue("B2", itemsource.BusinessApplicationName, currentRowTitle, 5);
//merge all cells in the title
MergeCell mergeCell = new MergeCell();
mergeCell.Reference = "B2:E2";
mergeCells.Append(mergeCell);
currentRowTitle = sheetData.Elements<Row>().FirstOrDefault(row => row.RowIndex.Value == (uint)4);
//add the form name
UpdateStringCellValue("B4", itemsource.ServiceOrderSheetName, currentRowTitle, 5);
//merge all cell in the form name
mergeCell = new MergeCell();
mergeCell.Reference = "B4:E4";
mergeCells.Append(mergeCell);
Drawing drawing = AddLogo(logoPath, worksheetPart);
Columns columns = new Columns();
columns.Append(CreateColumnData((UInt32Value)(uint)1, (UInt32Value)(uint)1, 26));
columns.Append(CreateColumnData((UInt32Value)(uint)2, (UInt32Value)(uint)2, 73));
worksheet.Append(columns);
int rowIndex = 8;
Row sectionRow;
foreach (var section in serviceOrder.Sections)
{
sectionRow = new Row() { RowIndex = (UInt32Value)(uint)rowIndex };
mergeCell = new MergeCell();
mergeCell.Reference = "A" + rowIndex + ":B" + rowIndex;
mergeCells.Append(mergeCell);
AppendTextCell("A" + rowIndex, section.Caption, sectionRow, 6);
AppendTextCell("B" + rowIndex, string.Empty, sectionRow, 6);
sheetData.Append(sectionRow);
foreach (var element in section.FormElements)
{
rowIndex++;
//The current row is obtained for updating the value of the cell
Row rowData = new Row() { RowIndex = (UInt32Value)(uint)rowIndex };
switch (element.Field.FieldType)
{
case FieldType.Catalogue:
AppendTextCell("A" + rowIndex.ToString(), element.Field.Caption, rowData, 1);
if (!string.IsNullOrEmpty(element.Field.FieldValue))
{
string catalogueValue = CatalogueBusiness.GetCatalogueValue(new Guid(element.Field.FieldValue)).CatalogueValueData;
AppendTextCell("B" + rowIndex.ToString(), catalogueValue, rowData, 1);
}
else
{
AppendTextCell("B" + rowIndex.ToString(), string.Empty, rowData, 1);
}
break;
case FieldType.RegularExpressionText:
case FieldType.Time:
case FieldType.SingleTextLine:
case FieldType.MultipleTextLine:
case FieldType.Datepicker:
AppendTextCell("A" + rowIndex.ToString(), element.Field.Caption, rowData, 1);
AppendTextCell("B" + rowIndex.ToString(), element.Field.FieldValue, rowData, 1);
break;
//.........这里部分代码省略.........
示例14: InsertSharedStringItem
/// <summary>
/// Заполнение ячейки данными
/// </summary>
/// <param name="wbPart"></param>
/// <param name="value"></param>
/// <returns></returns>
private int InsertSharedStringItem(WorkbookPart wbPart, string value)
{
var index = 0;
var found = false;
var stringTablePart = wbPart.GetPartsOfType<SharedStringTablePart>().FirstOrDefault() ??
wbPart.AddNewPart<SharedStringTablePart>();
var stringTable = stringTablePart.SharedStringTable ?? new SharedStringTable();
foreach (var item in stringTable.Elements<SharedStringItem>())
{
if (item.InnerText == value)
{
found = true;
break;
}
index += 1;
}
if (found) return index;
stringTable.AppendChild(new SharedStringItem(new Text(value)));
stringTable.Save();
return index;
}
示例15: InsertWorksheet
// Given a WorkbookPart, inserts a new worksheet.
public static WorksheetPart InsertWorksheet(WorkbookPart workbookPart)
{
// Add a new worksheet part to the workbook.
WorksheetPart newWorksheetPart = workbookPart.AddNewPart<WorksheetPart>();
newWorksheetPart.Worksheet = new Worksheet(new SheetData());
newWorksheetPart.Worksheet.Save();
// GetFirstChild <T>: Find the first child element in type T
Sheets sheets = workbookPart.Workbook.GetFirstChild<Sheets>();
string relationshipId = workbookPart.GetIdOfPart(newWorksheetPart);
// Get a unique ID for the new worksheet.
uint sheetId = 1;
if (sheets.Elements<Sheet>().Count() > 0)
{
sheetId = sheets.Elements<Sheet>().Select(s => s.SheetId.Value).Max() + 1;
}
// Give the new worksheet a name.
string sheetName = "Sheet" + sheetId;
// Append the new worksheet and associate it with the workbook.
Sheet sheet = new Sheet() { Id = relationshipId, SheetId = sheetId, Name = sheetName };
sheets.Append(sheet);
workbookPart.Workbook.Save();
return newWorksheetPart;
}