Экспорт ListView в формат Excel
у меня есть ListView
который после заполнения его, будет выглядеть так:
Я уже могу экспортировать его в файл в формате CSV, используя следующий код:
StringBuilder sb = new StringBuilder();
//Making columns!
foreach (ColumnHeader ch in lvCnt.Columns)
{
sb.Append(ch.Text + ",");
}
sb.AppendLine();
//Looping through items and subitems
foreach (ListViewItem lvi in lvCnt.Items)
{
foreach (ListViewItem.ListViewSubItem lvs in lvi.SubItems)
{
if (lvs.Text.Trim() == string.Empty)
sb.Append(" ,");
else
sb.Append(lvs.Text + ",");
}
sb.AppendLine();
}
но проблема в том, что в CSV я не могу экспортировать задний цвет ListView
пункты и подпункты, которые в моем случае очень важно. Было бы неплохо, если бы вы могли помочь мне с этим или по крайней мере указать мне в правильном направлении!
обновление
мне удалось найдите способ экспорта непосредственно в Excel, но я все еще не могу экспортировать цвет фона элементов ListView в Excel. Пожалуйста, помогите!
private void ToExcel()
{
Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();
app.Visible = true;
Microsoft.Office.Interop.Excel.Workbook wb = app.Workbooks.Add(1);
Microsoft.Office.Interop.Excel.Worksheet ws = (Microsoft.Office.Interop.Excel.Worksheet)wb.Worksheets[1];
int i = 1;
int i2 = 1;
foreach (ListViewItem lvi in myList.Items)
{
i = 1;
foreach (ListViewItem.ListViewSubItem lvs in lvi.SubItems)
{
ws.Cells[i2, i] = lvs.Text;
i++;
}
i2++;
}
}
1 ответов
похоже, что это довольно простой проект для экспорта ваших данных с помощью:
Он имеет примеры, показывающие, как установить цвета фона и другие элементы форматирования.
У вас уже есть код для цикла через заголовки и строки, поэтому вы должны иметь возможность работать с ним!