2016-04-05 39 views
0

我的代碼:集光標位置()新郵件

public void inspectors_NewInspector(Inspector _Inspector) 
    { 
     try 
     { 
      if (_Inspector.CurrentItem is MailItem) 
      { 
       MailItem myMailItem = (MailItem)_Inspector.CurrentItem; 
       myMailItem.HTMLBody = "<html><table><tr><td>cursor</td></tr></table></html>"; 
       Inspector insp = myMailItem.GetInspector; 
       insp.Activate(); 
       Microsoft.Office.Interop.Word.Find uiFind = insp.WordEditor.Range().Find; 
       uiFind.Text = "cursor"; 
       while (uiFind.Execute()) 
       { 
        Microsoft.Office.Interop.Word.Range rng = uiFind.Parent; 
        rng.Select(); 
        rng.Text = ""; 
        break; 
       } 
      } 
     } 
     catch (System.Exception ex) 
     { 

     } 
    } 

它正在爲回覆和轉發設置光標位置,但我越來越像一個異常當選擇新郵件時,屏幕截圖如下。任何人有任何建議擺脫這個錯誤?

enter image description here

+0

你幾點叫上面的代碼?哪個事件? –

+0

新郵件事件 – Adarsh

+0

也許檢查器當時不存在,因爲錯誤似乎在myMailItem.GetInspector發生。我希望當您回覆/轉發時,它不會打開新的檢查器窗口,而只是在主Outlook Explorer窗口中創建新的電子郵件。你可以在你的問題中包含整個方法代碼嗎? –

回答

0

的Word編輯器沒有完全被時間NewIsnpector被稱爲初始化。等待Inspector.Activate事件觸發。請記住,它會多次觸發。