问题标签 [word-contentcontrol]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ms-word - 带有签名 id 的打开 XML 文档 ContentControls 问题
我有一个使用内容控件生成 Open XML 文档的应用程序。
要创建一个新的内容控件,我使用 Interop 和方法ContentControls.Add
。此方法返回添加的内容控件的实例。
我有一些逻辑可以保存内容控件的 id 以供以后引用,但是在某些计算机中我遇到了一个奇怪的问题。
当我访问刚刚创建的Content Control的ID属性时,它返回一个带有数字id的字符串,问题是当这个值太大时,我保存文档后,如果我查看document.xml中的生成的文档,<w:id/>
元素的<w:sdtPr/>
元素有一个负值,即我从Id
生成控件的属性中得到的值的有符号等价物。
例如:
如果我保存文档并在包资源管理器中打开它,Id
内容控件的值为“-854810030”而不是“3440157266”。
我发现是这样的:
知道为什么会这样吗?这个问题很难复制,因为我不控制Id
生成的控件,它Id
是由互操作库自动生成的。
c# - 在另一个 ContentControl 之后插入一个 ContentControl
在我们的 VSTO Word 2010 插件中,我们试图在给定的其他 ContentControl 之后插入 RichTextControl。我们已经尝试过:
效果很好,除非我们要插入的控件之前的控件末尾有一个空段落。如果是这种情况,则将新的 ContentControl 插入到最后一个控件中。
我们怎样才能避免这种情况?
vba - 无法在 Word VBA 中关闭设计模式
我对这件事感到难过——在录制宏时,我基本上添加了一些字段并进入设计模式,以便能够替换占位符的虚拟文本。现在,我在录制宏时退出了设计模式,一切似乎都正常。但是在播放宏时,它只是在ActiveDocument.ToggleFormsDesign
.
这可能是什么原因造成的?有没有其他人经历过这个?
这是一个宏的片段:
visual-studio-2008 - Word 2007 中的目标页眉和页脚内容控件
我正在尝试通过 Word Automation 编辑 .docx 标头。如果内容控件放置在文本正文中,则没有问题,但如果内容控件位于页眉或页脚中,我将无法定位它们。有没有办法在页眉或页脚中定位内容控件(使用 Visual Studio 2008 Express)?
data-binding - OpenXML:使用绑定创建可重用的内容控件
我需要将特定的 XML 附加到 word 文档,以便元素显示在正确的位置。我可以用 OpenXML SDK 做到这一点。
问题是我也希望能够定义已经绑定在某种模板中的内容控件,以便其他人可以创建将附加 xml 的真实文档模板。好的,不确定人们会不会理解我的意思,所以我会进一步解释。
可能有许多不同的文档模板将使用相同的 XML 数据和相同的内容控件。由其他人来创建文档。
场景:由于一些变化(新布局或某些东西),一些不是程序员的家伙需要为通常的信息创建一个新表单。这与 XML 信息无关,保持不变。
“一些家伙”的最佳解决方案是在 Word 中创建文档并将内容控件拖动到位(或一些类似的解决方案)。然后,当 XML 被添加到文档中时,内容控件已预先绑定,因此没有问题。
现在这里有几点:
1) 可以预先绑定内容控件吗?如果路径中没有 XML,它会不会一直为空而不会出现问题?
2) 由于 i4i 的诉讼,像这样将内容控件绑定到 CustomXML 是否在未来的 Word 版本中仍然有效?
3)也许还有另一个比这更好的最佳解决方案吗?
提前致谢。
编辑:
要更清楚。我不想创建具有一些名称来识别它们和数据绑定 xpath 的内容控件。然而,在那一刻,路径上没有任何东西。
另一个用户进来并创建一个表单,决定布局等等,然后将内容控件添加到他想要信息的位置。
稍后使用新表格请求项目 X 的信息。因此,将获取该表单的副本,并将 CustomXML 添加到 Docx 文件中。现在因为 XML 模式是事先知道的,并且在决定 CC 的路径时使用,所以这个 XML 数据将被绑定到内容控件。
c# - 替换 OpenXML 中的内容控件
我需要一些东西作为占位符。我起初将内容控制视为一种解决方案,但我遇到了一些问题。
然后我考虑将 CustomXML 添加到 .docx,但由于 i4i 诉讼而放弃了。
然后我决定我将通过 OpenXML SDK 2.0 简单地更改内容控件的文本,但即使它被如此标记,内容控件也不会消失。我猜它不知道文本发生了变化,除非它发生在单词内部。
我也许可以只删除 CC 并放置文本,但我担心它可能带来的格式和样式问题,而且它也会违背内容控件的目的。
然后我开始想知道我是否可以定义自己的 Word 可以识别的占位符。也许通过积木。它不需要做任何事情,除了使用 OpenXML 很容易找到并且可以以某种方式标记,所以我知道用什么替换它。我不太确定 Building Blocks 可以做什么,但我希望它是可行的。
不确定哪种解决方案最适合我,但我需要的是:
a) 易于放置在模板中的东西,可能是预定义的 Content Control 占位符,您可以将其放置在您不想放置的位置并根据需要设置样式。
b) 添加数据后,它会删除所有占位符,不会再次修改。它保留占位符中定义的样式/格式。
回顾一下,我需要回答
如何在 OpenXML SDK 中编辑内容控件,以便在添加文本后将其删除。
-或者-
我可以为我可以替换的 Word 文档定义我自己的自定义 OpenXML 标记吗?
ms-word - 将内容控件的内容导出到另一个word文档中
我有一个包含许多内容控件的 word 文档。如何将内容控件的内容导出到另一个word文档中?我正在使用 C# 并打开 xml sdk。问候。
c# - 如何获取文档中所有内容控件的列表?
我正在使用互操作,我想获取包含在 word 文档中的所有内容控件的列表(在正文、形状、页眉、页脚中......)。这是正确和最好的方法吗:
问候。
c# - Word 2010 内容控件新行
我正在用一些文本填充 word 2010 中的内容控件。我无法让我的文字换行。我试过 '\n' ,'\r', Environment.NewLine ,它仍然出现在一行上。
我应该使用的任何想法
xml - Word 内容控件 -> 内容控件旁边的箭头是什么意思?
我正在创建一个带有纯文本内容控件的 word 文档。
我已经添加了其中的一些,并让代码能够将 XML 文件中的值替换到内容控件中。但是,现在当我向模板添加内容控件时,我可以在设计模式( <| 和 |> )中看到标记文本前后的播放标志。有人可以解释这些是什么以及如何摆脱它们,因为它们导致我的代码崩溃。当符号位于内容控制标签上时,此行返回 null
它为所有其他标签返回一个值。