Excel & WPF модальная форма - PullRequest
2 голосов
/ 10 июля 2009

У меня такая ситуация. (.net 3.5)

Приложение Winform, которое с помощью OleAutomation и Office Interop создает Excel, панель инструментов и обработчики для кнопок на панели инструментов.

Теперь у нас есть некоторые функциональные возможности, которые показывают пользовательские модальные окна (winform 2.0) с помощью метода:

form.ShowDialog(new ExcelHwndWrapper(objExcelApplication.HWND))

И «владелец» модальной формы устанавливается в окно «excel».

Теперь я хотел бы создать несколько окон WPF вместо Winforms из-за требований макета для новых функций.

Есть ли способ показать WPF ModalDialog "поверх" окна Excel?

Я нашел кое-что для показа WPF ModalDialog "поверх" winform, но не для Excel.

Спасибо.

1 Ответ

2 голосов
/ 25 января 2010

При использовании VSTO и Office 2007 у меня были проблемы с использованием WPF Windows в качестве модальных диалогов. То, что я нашел, что работало намного лучше, это создать форму Winforms и поместить внутри нее элемент управления ElementHost , а затем поместить туда содержимое WPF.

Когда я использовал WPF Windows без оболочки Winforms, у меня возникли проблемы с правильной записью ввода с клавиатуры, между прочим.

Пока вы растягиваете ElementHost, чтобы заполнить весь диалог, будет выглядеть, как будто у вас есть окно WPF.

...