Устранить проблему с помощью настраиваемой панели задач и элемента управления WebBrowser в Outlook 2010/2016 - PullRequest
0 голосов
/ 04 июня 2018

У меня есть плагин Outlook (с помощью VSTO .net), который открывает форму HTML5 на пользовательской панели задач Outlook.

Проблема: события Ctrl + A, TAB не работают с собственными элементами управления HTML, такими как Текстовая область, после нажатия на любые поля внешнего вида.Например, я открываю окно встречи / электронной почты с моей формой, а затем пытаюсь написать что-нибудь в текстовой области, а затем нажимаю Ctrl + A, оно работает нормально.Но теперь, если я нажму на любые собственные поля внешнего вида, а затем вернусь в текстовую область формы HTML, я не могу нажать Ctrl + A, так как клавиша TAB также не работает.Тем не менее, я могу написать любой текст в этой текстовой области.

Эта проблема была также сообщена на форуме ниже msdn, и был предоставлен обходной путь, который может иметь потенциальные проблемы с некоторыми элементами управления, такими как выпадающий список.

https://social.msdn.microsoft.com/Forums/en-US/0e411bc7-1dba-4a22-86a6-20529e4fe8ea/focus-problems-with-task-pane-and-webcontrol-in-outlook?forum=outlookdev

Для простоты добавление обходного пути для устранения этой проблемы здесь:

void webBrowser1_DocumentCompleted(object sender, 
System.Windows.Forms.WebBrowserDocumentCompletedEventArgs e)
  {
        HtmlDocument doc;
        doc = webBrowser1.Document;
        doc.Click += doc_Click;
  }

void doc_Click(object sender, HtmlElementEventArgs e)
  {
        this.Focus();  // force user control to have the focus
        HtmlElement elem = 
        webBrowser1.Document.GetElementFromPoint(e.ClientMousePosition);
        elem.Focus(); // then let the clicked control to have focus
  }

Я думаю, что эта проблема будет ограничена только Outlook 2010, но она все еще существует сoutlook 2016.

Обратите внимание, что я проверил это поведение с помощью элемента управления WinForm и WebBrowser, и оно там работает нормально.Единственная проблема связана с Outlook.

Кто-нибудь еще сталкивался с этой проблемой раньше, и есть ли какое-либо надлежащее исправление?

Пожалуйста, обратитесь к приведенной выше ссылке, на которой есть ссылка на YouTube, чтобы точно понять проблему.

спасибо за помощь.

1 Ответ

0 голосов
/ 04 июня 2018

Размещение веб-браузера внутри любого приложения Office - действительно плохая идея.Во всех версиях Office и .NET Framework остаются различные проблемы, вызванные частичной несовместимостью ядра WPF и графического интерфейса Office.

В качестве обходного пути вы можете подумать о воссоздании графического интерфейса пользователя с помощью элементов управления форм Windows.

...