Member 11452501 Ответов: 1

Вопрос веб-страницы, т. е. диалоге на C# приложений для Windows


Я работаю над одним приложением windows, где одно из клиентских веб-приложений закреплено внутри этого приложения windows.

Он закрепляется с помощью дескриптора окна приложения (команда set parent window).

ВОПРОС:

когда я нажимаю кнопку на клиентском приложении в обычном IE (не закрепленном), он открывает модель dialoge. Но когда я пытаюсь сделать то же самое при стыковке, он открывается в другой вкладке веб-страницы IE, а не как dialoge. Это приводит к замораживанию всего оконного приложения.

Можете ли вы помочь с этим, как предотвратить такое поведение?

Что я уже пробовал:

Я попытался отключить панель меню и панель инструментов, но она открывается в отдельном IE, если я это сделаю.

1 Ответов

Рейтинг:
2

Richard Deeming

Просто: не связывайтесь с окнами, принадлежащими другим приложениям.

Если вы хотите показать веб-браузер внутри вашего приложения, используйте WebBrowser контроль (WPF[^] | Windows Forms[^]) для встраивания движка рендеринга IE. (NB: Это будет застрять в режиме рендеринга IE7, если вы не изменение реестра[^].)

Или использовать что-то вроде CefSharp - быстрый веб-браузер для приложений WinForms и WPF[^] для встраивания движка рендеринга Chrome.