Tengo un wich ListView
después de poblar ella, se verá así: Exportación de un ListView a formato Excel
ya puedo exportarlo a un archivo CSV formateado utilizando el siguiente código:
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();
}
Pero el problema es que, en CSV, no puedo exportar el color de fondo de los elementos ListView
y los subelementos, que en mi caso son muy importantes. Sería bueno si me pueden ayudar con esto o al menos señalarme la dirección correcta!
ACTUALIZACIÓN
he conseguido encontrar una manera de exportar directamente a Excel, pero todavía no se puede exportar el color de fondo de elementos de ListView en Excel. ¡Por favor ayuda!
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++;
}
}
Gracias, parece que es para aplicaciones web, lo quiero para winfroms, ya que no tengo acceso a Visual Studio en este momento, ¿crees que de alguna manera puede funcionar para winforms? –
Sí, esto no está vinculado a un proyecto de sitio web. En la descarga se incluye un ejemplo de proyecto de modo de consola para exportar un archivo. – rtpHarry
Gracias, esta es una gran biblioteca –