将文本从WPF DataGrid复制到剪贴板到Excel

KMC*_*KMC 6 wpf clipboard

我有WPF DataGrid(VS2010 C#).我将数据从DataGrid复制到剪贴板并将其写入Excel文件.以下是我的代码.

dataGrid1.SelectAllCells();
dataGrid1.ClipboardCopyMode = DataGridClipboardCopyMode.IncludeHeader;
ApplicationCommands.Copy.Execute(null, dataGrid1);
dataGrid1.UnselectAllCells();
string path1 = "C:\\test.xls";
string result1 = (string)Clipboard.GetData(DataFormats.CommaSeparatedValue);
Clipboard.Clear();
System.IO.StreamWriter file1 = new System.IO.StreamWriter(path1);
file1.WriteLine(result1);
file1.Close();
Run Code Online (Sandbox Code Playgroud)

一切正常,除非我打开excel文件时它给了我两个警告:

"您尝试打开的文件'test.xls'的格式与文件扩展名指定的格式不同.在打开文件之前,验证文件是否已损坏且来自受信任的来源.是否要打开文件现在?"

"Excel检测到'test.xls'是一个SYLK文件,但无法加载它."

但是在我点击它之后,它仍然打开excel文件确定并且数据按照它应该的格式化.但是在excel文件打开之前我找不到如何摆脱这两个警告.

小智 2

这里已经描述了像您这样的问题:generate/opening CSV from console-file is in bad format error。对解决你的问题有帮助吗?

编辑:这是与 Microsoft KB 相关的 => http://support.microsoft.com/kb/323626