c# - 使用 Range.PasteAndFormat c# 时粘贴项目的顺序
问题描述
我正在尝试使用以下代码使用 Word 自动化将文本粘贴到循环中。
Clipboard.SetData(System.Windows.DataFormats.Rtf, text);
if (!Clipboard.ContainsText())
Thread.Sleep(500);
initialRange.PasteAndFormat(WdRecoveryType.wdFormatOriginalFormatting);
initialRange.Collapse(WdCollapseDirection.wdCollapseEnd);
我有一个我试图写的字符串集合:
这是第 1 行
这是第 2 行
这是第 3 行
我希望输出以相同的顺序打印,但是在使用上面的代码时,我以相反的顺序得到输出,即
这是第 3 行
这是第 2 行
这是第 1 行
知道我需要做什么来修复输出的顺序吗?
解决方案
最后,我想出了解决办法。我不得不添加
“初始范围。移动结束();” PasteAndFormat 调用之前的行。
因此,最终代码看起来像
Clipboard.SetData(System.Windows.DataFormats.Rtf, text);
if (!Clipboard.ContainsData(DataFormats.Rtf))
Thread.Sleep(500);
initialRange.MoveEnd();
initialRange.PasteAndFormat(WdRecoveryType.wdFormatOriginalFormatting);
initialRange.Collapse(WdCollapseDirection.wdCollapseEnd);
推荐阅读
- python - 如何使用颜色名称作为颜色绘制颜色的频率直方图
- r - 在 RStudio 中绘制美国地图上的经纬度点时出错
- javascript - 为什么模运算符在 javscript 的 FOR 循环中的工作方式不同?
- node.js - 如何使用 dynamodb 查询操作模拟/单元测试分页?
- rust - 对于模块路径+类型名称,在宏示例中应该使用哪些片段说明符(元变量类型)?
- ios - 我在 SwiftUI 中找到了两种管理视图的方法,但我不知道有什么区别,也不知道哪种方法更好
- r - 具有泊松分布的对数线性模型的偏移项
- python - 关于优化一些嵌套for循环的非常noob Python问题
- python - 网页抓取时如何切换框?
- ruby-on-rails - 我在使用 Rails N + 1 查询时遇到问题。不知道如何包含活动存储以避免 N + 1 查询