簡體   English   中英

如何使用 Open XML 操作 docx 上的 OptionButton / Radio 按鈕? (C#)

[英]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 二進制文件格式。

參考,例如: https://docs.microsoft.com/en-us/openspecs/office_file_formats/ms-doc/ccd7b486-7881-484c-a137-51170af7cc22

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM