[英]Error code 800A1066 when recreating control in Word 2007
我正在使用.dotm文件處理Word 2007文檔級加載項。 它是一個文檔,主要由文檔窗格上的按鈕控制,這些按鈕用於創建和銷毀文檔的某些部分。 創建的一些東西是內容控件。
一個這樣的按鈕是一個切換按鈕,需要刪除並重新添加大約10個字符和一個內容控件。 我的問題是,每當我嘗試重新創建內容控件時,Word都會引發COMException消息“ Command Failed”和錯誤代碼-2146824090(或0x800a1066)。
谷歌搜索此錯誤代碼表明這是與安全性有關的異常,與使用Open
或SaveAs
方法與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.