簡體   English   中英

在Word 2007中重新創建控件時出現錯誤代碼800A1066

[英]Error code 800A1066 when recreating control in Word 2007

我正在使用.dotm文件處理Word 2007文檔級加載項。 它是一個文檔,主要由文檔窗格上的按鈕控制,這些按鈕用於創建和銷毀文檔的某些部分。 創建的一些東西是內容控件。

一個這樣的按鈕是一個切換按鈕,需要刪除並重新添加大約10個字符和一個內容控件。 我的問題是,每當我嘗試重新創建內容控件時,Word都會引發COMException消息“ Command Failed”和錯誤代碼-2146824090(或0x800a1066)。

谷歌搜索此錯誤代碼表明這是與安全性有關的異常,與使用OpenSaveAs方法與Word文檔或與網絡驅動器上的文檔進行交互有關(請參閱此處此處此處的帖子)。 這根本不適合我在做什么。

這是我用來刪除控件的代碼:

LevelControl.LockContentControl = false;
LevelControl.Delete(true);
LevelControl = null; // probably not needed

這是娛樂代碼:

DropDownListContentControl LevelControl = this.Controls.AddDropDownListContentControl(r, "SectionLevel");

這是我最初用於創建控件的同一行代碼。

我的問題的原因是放錯了范圍的對象。 我無意間將范圍放置在另一個仍包含占位符文本的內容控件中。 不幸的是,錯誤消息對此沒有說明。

要確定您是否犯了相同的錯誤,請嘗試在最后調用r.Select() ,而不要執行可能導致此異常的任何操作,然后查看光標的位置。 執行此操作時,請確保文檔不限於在字段中進行編輯(“ Review>Protect Document>Restrict Editing and Formatting ),否則它可能會自動移至文檔的開頭或內容控件中,然后才能看到它。

暫無
暫無

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

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