重要
對 Microsoft InfoPath 2013 的支援已於 2026 年 7 月 14 日終止。 建議您將現有的 InfoPath 表單和工作流程移轉至支援的 Microsoft 365 解決方案。 深入了解 InfoPath 停用。
建立並發佈您自己的自訂 ActiveX 控制項除了提供 Microsoft Office InfoPath 中未提供的功能外,還可以為其他表單範本設計工具節省時間和精力。 您可以在設計模式中提供 Microsoft ActiveX 控制項,然後在您建立的表單範本上使用這些控制項。
本文內容
何時使用 ActiveX 控制項
一般而言,當您想要在表單範本上包含InfoPath 中無法使用的使用者介面元素時,可以使用 ActiveX 控制項,例如 Microsoft Windows 隨附的滑桿控制項。
您的組織也可以針對特定的商務用途建立自己的自訂 ActiveX 控制項。 例如,醫院可以開發允許在表單上顯示醫學影像的 ActiveX 控制項。 或者假設您的銷售代表必須跟踪給定月份銷售的商品數量。 以輸入方式更新文字方塊可能很麻煩,而且可能會造成錯誤,因為因為銷售人員必須增加很多倍。 只要按一下滑鼠就會自行遞增的自訂 ActiveX 控制項,可減少追蹤這項資訊所花費的時間,並有助於減少錯誤。
使用者體驗
使用者在表單上看到的內容,完全取決於您在表單範本上所用的 ActiveX 控制項類型。
當您發佈包含 ActiveX 控制項的表單範本時,必須在使用者的電腦上安裝並登錄該控制項,使用者才能開啟以該表單範本為基礎的表單。 某些 ActiveX 控制項,例如 Microsoft Windows 隨附的控制項,可能已經在使用者的電腦上安裝和登錄。 您可能無法安裝及登錄其他 ActiveX 控制項,例如您開發的自訂控制項。 在這種情況下,您必須採取措施為使用者安裝和註冊控制項。
如果您打算使用自訂安裝程式安裝表單範本,可以同時安裝和註冊自訂 ActiveX 控制項。 或者,您可以在 [新增自訂控制項精靈] 中指定現有的封包 (.cab) 檔案,用來在使用者電腦上安裝控制項。
當您使用 [新增自訂控制項精靈] 讓 ActiveX 控制項可供使用者使用時,必須指定是否要將現有的 .cab 檔案與表單範本一起封裝。 這個 .cab 檔案可讓您在使用者的電腦上安裝和登錄控制項。 如果您選擇在表單範本中包含 .cab 檔案,且您的使用者尚未安裝 ActiveX 控制項,則當使用者第一次根據您的表單範本開啟表單時,InfoPath 會提示他們安裝控制項。
如果符合下列兩個需求,InfoPath 會自動為使用者安裝並登錄控制項:
- .cab 檔案是使用在檔案上建立數位簽章的數位憑證所簽署。
- 數位簽章來自表單開發人員或其他信任的發行者。 如果已簽署 .cab 檔案,但在使用者的電腦上尚未信任發行者,InfoPath 會顯示安全性警示,並要求使用者啟用信任發行者。
相容性考量
當您在 InfoPath 中設計表單範本時,您可以選擇設計與瀏覽器相容的表單範本。 當您設計與瀏覽器相容的表單範本時,ActiveX 控制項無法在 [ 控制項 ] 工作窗格中使用,因為它們無法在網頁瀏覽器中顯示。
此外,範本組件中無法使用 ActiveX 控制項。
在表單範本上插入 ActiveX 控制項
您必須先在 [ 控制項 ] 工作窗格中設定它,才能將 ActiveX 控制項新增至表單範本。 InfoPath 包含新增自訂控制項精靈,可引導您完成選取 ActiveX 控制項的程序,包括安裝 .cab 檔案與表單範本,如有必要,以及指定 ActiveX 控制項的繫結選項和其他屬性。
將 ActiveX 控制項新增至控制項工作窗格
如果您開發自己的 ActiveX 控制項以用於 InfoPath,您必須先將該控制項識別為初始化安全且可安全編寫指令碼,才能完成下列程序。
如果沒有看到 [控制項] 工作窗格,請按一下 [插入] 功能表上的 [其他控制項],或按 ALT+I、C。
在 [控制項 ] 工作窗格底部,按一下 [新增或移除自訂控制項]。
在 [新增或移除自訂控制項 ] 對話方塊中,按一下 [新增]。
在 [新增自訂控制項精靈] 的第一頁,按一下 [ActiveX 控制項],然後按 [下一步]。
在精靈的下一頁中,在 [選取控制項 ] 清單中按一下您想要的控制項,然後按 [下一步]。
注意
[ 選取控制項 ] 清單會顯示您電腦上目前登錄的 ActiveX 控制項,包括隨附於 Microsoft Windows 的 ActiveX 控制項。 如果您建立了自訂 ActiveX 控制項,您必須註冊它,才能顯示在 [選取控制項 ] 清單中。 如果 ActiveX 控制項與 InfoPath 不相容或被視為不安全,您將無法將它們新增至 InfoPath。
在精靈的下一頁,執行下列其中一項操作:
- 若要在表單範本中包含安裝 .cab 檔案,請按一下 [包含 .cab 檔案],指定您要使用的檔案,然後按 [下一步]。
- 若要使用自訂安裝程式安裝 ActiveX 控制項,或者如果 ActiveX 控制項已安裝在使用者的電腦上,請按一下 [ 不包含 .cab 檔案],然後按 [下一步]。
在 [繫結] 屬性 清單中,執行下列其中一項操作:
若要將 ActiveX 控制項的屬性繫結至資料來源中的欄位,請按一下項目。
注意
如果 ActiveX 控制項包含 Value 屬性,InfoPath 會自動選取它,但您可以選擇變更它。
若要讓 ActiveX 控制項保持未繫結狀態,請按一下 [不繫結) (。
按一下 [下一步]。
根據您選擇新增的 ActiveX 控制項類型,可能會顯示 [啟用] 或 [停用] 屬性 清單。 如果是這種情況,請按一下屬性,然後按 [下一步]。
注意
如果控制項包含 [啟用] 屬性,InfoPath 會自動選取它,但您可以選擇變更。
如果您在步驟 7 中指定繫結屬性,請指定您想要的繫結選項。
作法
在 [欄位或群組類型] 清單中,執行下列其中一項:- 若要將 ActiveX 控制項繫結至具有簡單資料類型的欄位,請按一下 元素或屬性) (欄位 。 這種類型的繫結由簡單的 ActiveX 控制項使用,例如 Microsoft Windows 隨附的滑桿控制項。 如果選取此選項,則必須指定 ActiveX 控制項的預設資料類型,以及可繫結 ActiveX 控制項的任何其他資料類型。
- 若要將 ActiveX 控制項繫結至具有自訂資料類型的欄位,請按一下 具有自訂資料類型) 的欄位 (元素 。 此類型的繫結由 ActiveX 控制項使用,這些控制項可做為特定內容類型的編輯器,例如編輯 MathML 的方程式編輯器。 如果您選取此選項,您也必須為要編輯的 XML 指定命名空間。
- 若要將 ActiveX 控制項繫結至欄位或群組,無論其資料類型為何,請按一下 [ 欄位] 或 [群組] (任何資料類型) 。 這種類型的繫結可由 ActiveX 控制項來分析在其他位置輸入到相同表單中的資訊,例如圖形或圖表,或由直接操作 XML 資料的 ActiveX 控制項使用。
按一下 [完成]。
檢閱確認訊息,然後按一下 [關閉] 以離開精靈。
在 [新增或移除自訂控制項] 對話方塊中,按一下 [確定]。
ActiveX 控制項出現在 [ 控制項 ] 工作窗格之後,您就可以將它插入表單範本中。
在新的空白表單範本上插入 ActiveX 控制項
當您將 Microsoft ActiveX 控制項插入表單範本時,InfoPath 會根據您在 [新增自訂控制項精靈] 中指定的選項,插入繫結至資料來源中欄位或群組的自訂控制項。
注意
如果貴組織中的其他表單範本設計者需要在其表單範本上使用相同的 ActiveX 控制項,且他們的電腦上尚未安裝該控制項,您可以建立自訂安裝程式,例如 Microsoft Windows Installer 套件 (.msi) 檔案。 這個自訂安裝程式可以快速安裝並註冊表單範本設計工具的 ActiveX 控制項。
在表單範本上,將游標放在您要插入控制項的地方。
如果沒有看到 [控制項] 工作窗格,請按一下 [插入] 功能表上的 [其他控制項],或按 ALT+I、C。
在 [插入控制項] 底下,按一下您要插入的 ActiveX 控制項名稱。
注意
新增 ActiveX 控制項至表單範本時請務必小心。 ActiveX 控制項的設計方式可能會造成安全性風險。 建議您僅使用來自受信任來源的控制項。
任何 ActiveX 控制項特定的屬性頁面,都會與 ActiveX 控制項的標準 InfoPath 屬性頁面並排顯示。 若要查看這些屬性頁面,請按兩下表單範本上的 ActiveX 控制項。
在以現有資料來源為基礎的表單範本上插入 ActiveX 控制項
如果表單範本的設計是以現有的可延伸標記語言 (XML) 檔案、資料庫或 Web 服務為基礎,則 InfoPath 會從現有的資料來源,衍生 [資料來源] 工作窗格中的欄位和群組。 在此案例中,您可以將欄位從 [資料來源 ] 工作窗格拖曳到表單範本,或改為從 [ 控制項 ] 工作窗格插入 ActiveX 控制項,插入 ActiveX 控制項,如下列程序所述:
- 在表單範本上,將游標放在您要插入控制項的地方。
- 如果沒有看到 [控制項] 工作窗格,請按一下 [插入] 功能表上的 [其他控制項],或按 ALT+I、C。
- 在 [插入控制項] 底下,按一下您要插入的 ActiveX 控制項名稱。
- 在 [控制項繫結] 對話方塊中,選取要儲存控制項資料的欄位,然後按一下 [確定]。
安全性提示
設計包含 ActiveX 控制項的表單時,請記住下列安全性問題:
- InfoPath 中使用的 ActiveX 控制項具有比 Windows Internet Explorer 中使用的 ActiveX 控制項更嚴格的限制。 例如,InfoPath 要求將 ActiveX 控制項標示為可安全編寫指令碼且可安全初始化。 如果您開發自訂 ActiveX 控制項以用於表單範本,您必須實作 IObjectSafety 介面,讓 InfoPath 辨識特定控制項已標示為安全指令碼,且可安全初始化。
- 新增 ActiveX 控制項至表單範本時請務必小心。 ActiveX 控制項的設計方式可能會造成安全性風險。 建議您僅使用來自受信任來源的控制項。
- ActiveX 控制項無法由具有受限信任等級的表單範本安裝或執行,如設計模式) 的 [ 表單選項 ] 對話方塊中所指定 (。
- 如需有關設計更安全的 ActiveX 控制項的資訊,請造訪 Microsoft Developer Network (MSDN) 網站。