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

2024-02-20

我有 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();

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

“您试图打开的文件 “test.xls”的格式不同 比文件扩展名指定的要多。 验证文件未损坏 并且之前来自可信来源 打开文件。你想打开吗 现在文件?”

“Excel 检测到‘test.xls’是 SYLK 文件,但无法加载它。”

但在我点击它之后,它仍然可以正常打开 Excel 文件,并且数据的格式按预期进行。但我找不到如何在打开 Excel 文件之前消除这两个警告。


您需要使用 csv 作为扩展名。 Xls 是 Excel 文件扩展名。 所以

string path1 = "C:\\test.csv";

应该管用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将文本从 WPF DataGrid 复制到剪贴板再到 Excel 的相关文章

  • 如何提高Canvas渲染性能?

    我必须画很多Shape http msdn microsoft com en us library system windows shapes shape aspx 约 1 20 万 作为 Canvas 2 的子级 我在 WPF 应用程序中
  • 如何正确对齐 WPF GeometryGroup 中的路径?

    我正在使用一个GeometryGroup在圆的中心绘制一个符号 下面的示例显示了我在对此进行实验时的尝试之一 它具有从同一原点 32 32 出发的三条直线
  • 如何使 WPF 中的窗口对鼠标事件不可见?

    我创建了这个类 它非常适合使我的 WPF 应用程序对鼠标事件透明 using System Runtime InteropServices class Win32 public const int WS EX TRANSPARENT 0x0
  • 为什么在 WinForms 中可以跨线程添加控件,而在 WPF 中却不能?

    在虚拟 WinForms 应用程序中 我可以在设计时创建 ListBox 在运行时创建后台线程 然后从后台线程将控件添加到 ListBox 但如果我在 WPF 中执行相同的操作 则会出现错误 为什么我可以在 WinForms 中执行此操作
  • 捕获多点触摸屏上的双击触摸

    我发布了另一个问题 如何通过监视 TouchDown 事件的触摸之间的时间跨度来 手动 捕获双击 但它有很多问题 有谁知道在多点触摸屏上捕获双击的标准 Microsoft 方式 事件 多谢 Dan 我检查了点击位置和秒表的组合 效果非常完美
  • 如何检索 ComboBox 选定的值作为枚举类型?

    这是我的Enum code public enum EmployeeType Manager Worker 我将初始化ComboBox值 而表单将自身初始化为 combobox1 ItemsSource Enum GetValues typ
  • WPF 和 ClickOnce

    MSDN 未将 WPF exe 列为 ClickOnce 支持的应用程序类型 ClickOnce 应用程序是任何 Windows Presentation Foundation xbap Windows 窗体 exe 控制台应用程序 exe
  • MVVM 创建 ViewModel

    有人可以向我解释一下如何为 MVVM 模式创建 ViewModel 我试图理解这里的教程 http msdn microsoft com en us magazine dd419663 aspx http msdn microsoft co
  • 将快速文本输入发送到另一个进程(窗口)

    我正在编写一个 C WPF 程序 它将文本消息发送到另一个程序的窗口 我有一个宏程序作为我的键盘驱动程序 Logitech g15 的一部分 它已经做到了这一点 尽管它不会将击键直接发送到进程 而是发送到当前聚焦的窗口 它运行良好 但我也需
  • 如何将 WPF 3.0 下构建的应用程序转换为 4.5 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我在 WPF 3 0 中构建了一个应
  • 带有移动向前/向后按钮的自定义列表框

    我有一个带有左 右重复按钮的自定义列表框 可以使用内容模板滚动其内容 如下所示
  • 数据绑定到代码隐藏中的目标 CLR 属性

    在代码隐藏中绑定到依赖属性很容易 你只需创建一个新的System Windows Data Binding对象 然后调用目标依赖对象的SetBinding method 但是 当我们绑定的属性是 CLR 属性并且您无法提供Dependenc
  • 使用隧道而不是冒泡的路由命令

    我有一个自定义控件 MyControl 公开自定义命令 我想要家长Window能够调用此命令 以及所有MyControls应该对此做出反应 我已将命令添加到MyControl s CommandBindings集合 它还提供了CanExec
  • C# - WPF - 组合框 - 将鼠标悬停在聚焦的组合框上时防止滚动(使用附加属性)

    背景 我需要防止ComboBox从将鼠标悬停在其上 聚焦时 时滚动和使用鼠标滚轮滚动 在这种情况下 我无法使用隐藏代码 因此我使用附加属性 我刚问这个问题 https stackoverflow com questions 76101509
  • WPF:鼠标按下时不会触发鼠标离开事件

    我遇到鼠标进入 离开事件的问题 当按下鼠标按钮并按住光标在控件内 然后光标以足够快的速度移出控件时 此事件不会触发 你能告诉我为什么会这样吗 有什么方法可以正确获取这些事件吗 请检查示例项目以查看其实际效果 https www dropbo
  • WPF DataGrid 选定项

    我有一个 DataGrid 用户可以通过在最后一行输入数据来添加项目 我还有一个按钮可以删除当前选定的项目 但是 当选择最后一行 空 用于添加新项目 时 最后选定的项目将保留在 SelectedItem 中 因此 如果我打开窗口 选择最后一
  • 密码盒和 MVVM

    我们有以下场景 MVVM 用户界面 用户可以在其中输入密码 实际上是一个PasswordBox 应该做一些工作的服务器 服务器连接到一些需要身份验证的数据库 我已经读过这个关于MVVM中PasswordBox的问题 https stacko
  • WPF 自定义控件 - ItemsControl 模板未应用

    我正在构建一个派生自 TabControl 的自定义 WPF 控件 在 ControlTemplate 中 我使用 ItemsControl 来显示从模板绑定的列表 FileMenuItem 类型的可观察集合 在程序执行期间 我在输出窗口中
  • WPF PRISM 事件订阅不会消亡

    我有一个 PRISM RegionManager 其中有几个区域 顶部的功能区区域和其下方用于我的视图的主要内容区域 相当基本 该应用程序以主要内容区域中的 主页 视图开始 当我单击功能区上的按钮时 我将第二个视图注入内容区域并在区域管理器
  • 更改窗口的内容 (WPF)

    我创建了一个简单的 WPF 应用程序 它有两个 Windows 用户在第一个窗口中填写一些信息 然后单击 确定 这会将他们带到第二个窗口 这工作正常 但我试图将两个窗口合并到一个窗口中 这样只是内容发生了变化 我设法找到了这个更改窗口内容时

随机推荐

  • 布局之间的淡入淡出效果

    作为对象 我将重现两个布局之间的淡入淡出效果 现在我有这样的情况 LinearLayout l LinearLayout l2 要在它们之间切换我用过 l setVisibility View GONE l2 setVisibility V
  • 上传项目后在 github 上的 django 项目中隐藏密钥

    我在 github 上上传了我的 django 项目 并且我的项目有很多提交 我不想删除我的项目并再次重新上传 将项目上传到 github 并进行大量提交后隐藏密钥的最简单方法是什么 在同一目录中manage py是 创建一个文件 其名称为
  • C++20 从带括号的值列表初始化聚合,不支持内部数组

    采用 C 20p0960 https wg21 link p0960 允许从带括号的值列表初始化聚合 确切的措辞 dcl init 17 6 2 2 https eel is c draft dcl init 17 6 2 2 says 如
  • jQuery 将 DIV 复制到另一个 DIV 中

    需要一些 jquery 帮助将一个 DIV 复制到另一个 DIV 中 并希望这是可能的 我有以下 HTML div class container div class button div div 然后我在页面的另一个位置有另一个 DIV
  • 在 crate 的 API 中发布具体类型而不是“impl Trait”有什么优势?

    在修补箱子时 我自己隐藏了内部迭代器类型 但作者说发布类型是一项功能 最佳实践是为公共 API 中公开的每个迭代器发布显式包装器结构 显然 Rust 标准库对其所有迭代器都执行此操作 为什么要这样做 更具体地说 如果实现兼容的类型std e
  • 如何查找字符串中某个字符出现的数组

    我正在 PHP 中搜索一个函数来返回字符串中字符的位置数组 输入这些参数 hello world i 将返回 4 7 提前致谢 无需循环 str Hello World letter o letterPositions array keys
  • 获取 numpy 中唯一行的位置的更快方法是什么

    我有一个唯一行的列表和另一个更大的数据数组 在示例中称为 test rows 我想知道是否有一种更快的方法来获取数据中每个唯一行的位置 我能想到的最快的方法是 import numpy uniq rows numpy array 0 1 0
  • if 条件 vs &&,是否有任何性能提升

    如果用户是所有者 我有一个条件要检查删除和文章 delete article if user owner 另一种方法是 user owner delete article 选择其中任何一个有什么好处还是它只是一种写作风格 性能不太可能成为该
  • 在 PostgreSQL 中正确处理 TIME AND TIME ZONE

    我们有一个表 其中填充了来自另一个系统的遗留报告的数据 该表的列反映了报告的相同结构 以下是该表的缩写结构 CREATE TABLE IF NOT EXISTS LEGACY TABLE REPORT DATE DATE NOT NULL
  • 如何保护 imap_open 连接的安全

    我使用 imap open 与我的邮件服务器建立连接以检查退回的电子邮件 pop3conn imap open localhost 110 pop3 MAILLOGIN MAILPWD if pop3conn false echo br n
  • 从 Github 安装 Gson

    我刚刚开始学习 Java 我正在开发的一个新项目需要 Gson 我觉得我在网上找到的所有安装说明中缺少了一些东西 它们都引用了我应该能够从 zip 文件中提取的三个 jar 文件 但是当我在 github 上查看 Gson 时 我找不到任何
  • SQL:将具有开始/结束的行扩展为单独的行

    我有这样的记录 start end total 830 1300 5 1400 1430 2 我想扩展到 instance total 830 5 831 5 832 5 1299 5 1300 5 1400 2 1401 2 1429 2
  • 触摸命令在 VSC 终端中不起作用

    我是新手 仍在尝试弄清楚如何配置我的开发环境 我在 Visual Studio Code 中使用 touch 命令时遇到错误 我可以用mkdir可以创建目录 但无法创建 php文件 这是我收到的错误 有任何想法吗 谢谢你 touch 术语
  • C++ 中的结构体和 C# 中的结构体有区别吗?

    C 中的结构体和 C 中的结构体有区别吗 在 C 中 您使用结构体来定义值类型 而不是由classes 在 C 中 结构体与类具有相同的默认可访问性级别public 所以问题应该是 C 中的结构与 C 中的类不同吗 是的 它们是 不能从 C
  • 读入文件内容rails

    我有一个表单正在尝试读取 JSON 文件以进行解析 操作 等 我在控制器中读取它时遇到问题 View 控制器 def upload json file data params datafile File read file data do
  • vim autocmd 静默执行

    我的 vimrc 文件以这样的方式配置 每次保存 Python 文件或输入 python 缓冲区 也适用于 Matlab 和 Latex 但都是相同的 时 它会默默地执行丰富的 ctags set tags tags autocmd Buf
  • 在 C# 中获取 GMT 纪元

    我需要获取 GMT 纪元的毫秒数 我可以将其用于 GMT 部分吗 DateTime Now ToUniversalTime 自纪元以来的毫秒数怎么样 这应该给你一个与时区无关的答案 TimeSpan t DateTime UtcNow ne
  • 在 wagtailadmin 的 limit_choices_to 中使用 或 Q() 对象

    姜戈 1 10 5 def limit contributor choices limit Q group name contributor Q group name Group return limit author models For
  • Android 计时器:postDelayed 与 Schedule

    我需要每 200 毫秒完成一次工作 并且需要平稳均匀 要做的任务是中等重量的 在问题 1 和问题 2 的两种情况下 搜索计时器看起来来自社区的最佳解决方案是使用处理程序 一个可运行的和postDelayed 如何在android中设置定时器
  • 将文本从 WPF DataGrid 复制到剪贴板再到 Excel

    我有 WPF DataGrid VS2010 C 我将数据从 DataGrid 复制到剪贴板并将其写入 Excel 文件 下面是我的代码 dataGrid1 SelectAllCells dataGrid1 ClipboardCopyMod