将wpf datagrid导出为自定义Excel CSV文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将wpf datagrid导出为自定义Excel CSV文件相关的知识,希望对你有一定的参考价值。

我有一个绑定到MVVM集合类的wpf数据网格。我有一些MVVM类的属性,它绑定到datagrid但不是每个都绑定。

我需要从datagrid导出Excel CSV文件中的数据。但MVVM类的某些属性未绑定到datagrid但需要在Excel文件中显示。所以我需要创建自定义列(datagrid中的列+一些额外的列)。

以下是我目前用于创建Excel CSV文件的代码:

importedDG.SelectAllCells(); 
importedDG.ClipboardCopyMode = DataGridClipboardCopyMode.IncludeHeader;
ApplicationCommands.Copy.Execute(null, importedDG);
importedDG.UnselectAllCells();
string path1 = "C:\test.csv"; 
string result1 = (string)Clipboard.GetData(DataFormats.CommaSeparatedValue); 
Clipboard.Clear(); 
System.IO.StreamWriter file1 = new System.IO.StreamWriter(path1);
file1.WriteLine(result1);file1.Close(); 

这将使用DG中的确切列创建文件,但不是我想要的额外列。我该如何添加它们?

答案

我猜你在网格控件上使用一种方法来生成CSV?你没有在你的问题中说明多少。

如果是这样,我会将此责任移至您的视图模型。您可以使用KBCsv等CSV库来执行编写数据的任务。

以上是关于将wpf datagrid导出为自定义Excel CSV文件的主要内容,如果未能解决你的问题,请参考以下文章

EasyUI datagrid-export 将datagrid的数据导出至Excel-解决科学计数法

NPOI导出WPF DataGrid控件显示数据

WPF DataGrid如何分页、导出Excle、打印(急)

Silverlight DataGrid:导出到 excel 或 csv

C#导出为Excel格式无效

easyui datagrid导出Excel 有啥好的解决方法吗