OpenXML - SpreadsheetReader не существует в текущем контексте

49
5

Таким образом, я пытался реплицировать этот ответ. Получение ячейки-фона в Excel с помощью Open XML 2.0

но VS жалуется, что SpreadsheetReader не существует в текущем контексте. Я не могу ctrl+. решить проблему.

Вот (почти рабочий) код:

using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Spreadsheet;
using DocumentFormat.OpenXml;

public static DocumentFormat.OpenXml.Drawing.PatternFill GetCellPatternFill(Cell theCell, SpreadsheetDocument document)
{
WorkbookStylesPart styles = SpreadsheetReader.GetWorkbookStyles(document);

int cellStyleIndex;
if (theCell.StyleIndex == null) // I think (from testing) if the StyleIndex is null
{ // then this means use cell style index 0.
cellStyleIndex = 0; // However I did not found it in the open xml
} // specification.
else
{
cellStyleIndex = (int)theCell.StyleIndex.Value;
}

CellFormat cellFormat = (CellFormat)styles.Stylesheet.CellFormats.ChildElements[cellStyleIndex];

DocumentFormat.OpenXml.Drawing.Fill fill = (DocumentFormat.OpenXml.Drawing.Fill)styles.Stylesheet.Fills.ChildElements[(int)cellFormat.FillId.Value];
return fill.PatternFill;
}

спросил(а) 2015-07-23T13:35:00+03:00 4 года, 7 месяцев назад
1
Решение
63

Я решил эту проблему, используя DocumentFormat.OpenXml.Extensions. Это расширение можно загрузить с https://simpleooxml.codeplex.com/releases/view/48673

Cheers Karel Groos

ответил(а) 2015-07-31T11:08:00+03:00 4 года, 6 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема