2016-04-05 17 views
0

Kodum: Bu cevap için çalışan ve imleç konumunu ayarlamak için ileriye ama böyle bir istisna alıyorum edilirset imleç konumu() yeni posta

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) 
     { 

     } 
    } 

Yeni posta seçildiğinde aşağıdaki ekran görüntüsü. Bu hatadan kurtulmak için herhangi bir öneriniz var mı?

enter image description here

+0

Yukarıdaki kodu hangi saatte arıyorsunuz? Hangi olay? –

+0

Yeni posta olayında – Adarsh

+0

Belki de denetleyici o anda mevcut değil, çünkü hata myMailItem.GetInspector'da oluyor gibi görünüyor. Yanıtla/İlettiğinde, yeni bir denetçi penceresi açmaz, ancak ana Outlook Explorer penceresinde yeni bir e-posta oluşturur. Sorunuza tüm yöntem kodunu ekleyebilir misiniz? –

cevap

0

Kelime düzenleyici tam NewIsnpector adlandırılan zaman başlatılır değildir. Inspector.Activate etkinliğinin tetiklenmesini bekleyin. Birden çok kez ateş ettiğini unutmayın.