I want to check if property Switch Rows/Columns is enabled or not in a bar chart, while reading it with OpenXml.
What I have tried:
OpenXmlElement sheetdata = sheet.Worksheet.Where(x => x.LocalName.ToLower() == "sheetdata").FirstOrDefault();
List<int> seriesindex = new List<int>();
for (int rowindex = 0; rowindex < sheetdata.Count(); rowindex++)
{
Row row = (Row)sheetdata.ElementAt(rowindex);
if (rowindex == 0)
{
for (int colindex = 1; colindex < row.Count(); colindex++)
{
Cell col = (Cell)row.ElementAt(colindex);
if (names.ContainsKey(col.CellValue.Text))
{
string seriesname = names[col.CellValue.Text];
int sindex = Array.IndexOf(chartData.Series.ToArray(), seriesname);
seriesindex.Add(sindex);
}
}
}
else
{
string col = ((Cell)row.ElementAt(0)).CellValue.Text;
string catname = names.ContainsKey(col) ? names[col] : string.Empty;
int categoryindex = Array.IndexOf(chartData.Category.ToArray(), catname);
if (!string.IsNullOrEmpty(catname))
{
for (int colindex = 1; colindex < row.Count(); colindex++)
{
Cell col1 = (Cell)row.ElementAt(colindex);
if (seriesindex.ElementAt(colindex - 1) != -1 && categoryindex != -1)
col1.CellValue.Text = chartData.Score[seriesindex.ElementAt(colindex - 1)][categoryindex].ToString();
}
}
}
}
sd.Save();
ChartSpace chartObj = chartPart.ChartSpace;
<pre lang="c#">