новая электронная почта блокирует Outlook, заставляет окно электронной почты отображаться как topMost

Я использую следующий код, чтобы прочитать адрес электронной почты из DataGridView, а затем создать электронное письмо Outlook. Это работает отлично, за исключением того, что новое электронное письмо устанавливается как topMost и/или открывается как диалоговое окно, что означает, что я не могу щелкнуть или сделать что-либо еще в Outlook, пока открыто новое окно электронной почты. Это проблематично, если у меня открыта новая электронная почта, и я пытаюсь найти что-то в своем почтовом ящике. Также мое приложение не будет отвечать (заблокировано), пока я не закрою или не отправлю электронное письмо.

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

Строка this.TopMost = falseпредназначена для скрытия моего приложения WinForms. и отобразите новое окно электронной почты впереди.

try
{

      string emailString = resultsGrid[resultsGrid.Columns["Email"].Index, resultsGrid.SelectedCells[resultsGrid.Columns["Email"].Index].RowIndex].Value.ToString();

    if(emailString.Contains("mailto:"))
    {
        emailString = emailString.Replace("mailto:", "");
    }

    this.TopMost = false;

    // Create the Outlook application by using inline initialization.
    Outlook.Application oApp = new Outlook.Application();

    //Create the new message by using the simplest approach.
    Outlook.MailItem oMsg = (Outlook.MailItem)oApp.CreateItem(Outlook.OlItemType.olMailItem);
    oMsg.Subject = "";
    oMsg.To = emailString;
    oMsg.Body = "";
    oMsg.Display(true);


    oMsg = null;
    oApp = null;
}
catch (Exception ex)
{
    MessageBox.Show(string.Format("An error occurred: {0}", ex.Message));
}

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

5
задан ikathegreat 25 May 2012 в 18:50
поделиться