2010-01-11 2 views
1

Я добавил две кнопки, которые отправляют и копируют и отправляют и перемещают электронные письма из Outlook в нашу систему управления документами, которая находится в Sharepoint. У меня есть обе кнопки, но автоматическая проверка орфографии в Outlook не вызывается. Есть ли способ вызвать проверку орфографии Outlook 2007 перед отправкой программного обеспечения по электронной почте.Invoke Spellcheck в Office 2007 через vsto надстройку с помощью C# при отправке электронной почты

Вот фрагмент кода ...

enter code here 

void Application_ItemContextMenuDisplay(Microsoft.Office.Core.CommandBar CommandBar, Microsoft.Office.Interop.Outlook.Selection Selection) 
    { 
     try 
     { 
     CommandBar.Controls[1].BeginGroup = true; // add seperator before first menu 
      if (Selection.Count == 1) 
      { 
       _mailItem = Selection[1] as Outlook.MailItem; 

       if (_mailItem != null) 
       { 
      Office.CommandBarButton cmdButtonCopy = (Office.CommandBarButton)CommandBar.Controls.Add(Office.MsoControlType.msoControlButton, 1, Missing.Value, 1, Missing.Value); 
        cmdButtonCopy.Caption = "&Copy to DMS"; 
        cmdButtonCopy.Click += new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(cmdButtonCopy_Click); 

        Office.CommandBarButton cmdButtonMove = (Office.CommandBarButton)CommandBar.Controls.Add(Office.MsoControlType.msoControlButton, Missing.Value, Missing.Value, 2, Missing.Value); 
        cmdButtonMove.Caption = "&Move to DMS"; 
        cmdButtonMove.Click += new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(cmdButtonMove_Click);       


       } 
      } 
     } 
     catch (Exception ex) 
     { 
      ExceptionService.Instance.Handle(ex.Message, ex); 
     } 
    } 

    void cmdButtonCopy_Click(Microsoft.Office.Core.CommandBarButton Ctrl, ref bool CancelDefault) 
    { 
     try 
     { 

      **// would like to invoke spell check here......** 
      Outlook. 
      Utils.SendToDMS(_mailItem, false); 





     } 
     catch (Exception ex) 
     { 
      ExceptionService.Instance.Handle(ex.Message, ex); 
     } 
    } 

ответ

0

Я не думаю, что вы можете сделать это. Единственный способ, которым я знаю, заставить проверку орфографии, кроме нажатия на отправку элемента через событие, - это запустить выполнение на кнопке проверки орфографии на панели инструментов.

Маркус

0

Метод, который я обнаружил, что работает, программно нажать Alt + S, которая является такой же, как нажать на кнопку посыла

mailItem.GetInspector.Activate(); 
System.Windows.Forms.SendKeys.SendWait("%S");