У нас есть приложение, разработанное на C # с WPF (.NET Framework 3.0)
Главное окно имеет стеклянную рамку, а дочернее окно, содержащее веб-браузер, центрируется внутри него:
WPF main window
-> Child window - frame control
-> Page
-> WindowsFormsHost
-> WebBrowser
Поскольку мы использовали .NET 3.0, мы должны поместить WebBrowser в WindowsFormsHost, и он не сможет отобразиться, если мы установим для свойства окна AllowTransparency значение true.
Теперь в Windows XP, когда пользователь нажимает кнопку «Завершение работы» в меню «Пуск», отображается диалоговое окно с различными вариантами (выключение, перезапуск и т. Д.), В то время как за ним кажется, что весь рабочий стол исчезает от цвета к оттенкам серый. Когда это происходит, наше главное окно становится скрытым, в то время как окно страницы все еще отображается на экране.
Мы уже установили, что владельцем окна страницы является главное окно, но это не помогло. Поэтому я пришел к выводу, что я должен перехватить событие «исчезновение серого» и ... сделать что-то, чтобы смягчить это безобразие. Итак: кто-нибудь знает, как можно разрешить уведомление моей программы до перехода в серый цвет?