[英]How to manipulate OptionButton / Radio button on docx with Open XML? (C#)
我有一个需要用 C# 填充的 .docx 模板。 这个模板有一些带有单选按钮组的部分,就像这样:
我正在使用打开的 XML,我检查了 xml,我想我找到了单选按钮:
<w:p w14:paraId="6E7C5D2C" w14:textId="2740F2E7" w:rsidR="0085589C" w:rsidRPr="00055073" w:rsidRDefault="0085589C" w:rsidP="00465D62">
<w:r>
<w:object w:dxaOrig="225" w:dyaOrig="225" w14:anchorId="28DEEE36">
<v:shape id="_x0000_i1053" type="#_x0000_t75" style="width:78pt;height:17.25pt" o:ole="">
<v:imagedata r:id="rId15" o:title="" />
</v:shape>
<w:control r:id="rId16" w:name="OptionButton3" w:shapeid="_x0000_i1053" />
</w:object>
</w:r>
</w:p>
我不知道如何用 C# 操作这些元素。 我试图遍历 doc 元素并找到一个名为 OptionButton 类型为 Control 的元素,但我还没有找到允许我操纵其值的属性或方法:
有人可以帮我解决这个问题吗?
谢谢你。
问题中显示的选项按钮是ActiveX控件,最初设计用于 VBA 用户窗体。 然后对 Office 文档表面进行了调整,以允许它们在文档中使用,同时保留其编程接口。
ActiveX 控件不是由 Office Open XML 定义的。 与 VBA 的所有内容一样,它们仍采用专有的二进制格式(Office 2007 之前)。
以下是选项按钮的 Word Open XML 的摘录:
<pkg:part pkg:name="/word/activeX/activeX1.bin" pkg:contentType="application/vnd.ms-office.activeX">
<pkg:binaryData>0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAA
EAAAAgAAAAEAAAD+////AAAAAAAAAAD/////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
为了“阅读”此类内容,有必要访问并理解 Word 和 Office 二进制文件格式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.