Я работаю с WPF и С# (используя Visual Studio 2013) и хочу разработать приложение с прозрачным фоном и веб-браузером. Я понимаю, что это проблема веб-браузера по умолчанию... но я хочу найти другое решение. Я нашел другие компоненты веб-браузера, такие как CefSharp, основанные на хроме. Я хотел бы знать, возможно ли использование прозрачного фона с помощью браузера CefSharp, и я хотел бы, чтобы кто-нибудь объяснил мне шаг за шагом, как реализовать очень простой веб-браузер (я нашел какую-то статью, но я не смог реализовать рабочий заявление). Если вы считаете, что есть другие лучшие компоненты, пожалуйста, предложите мне и объясните, как заставить их работать. Спасибо за внимание и за ответы.
Пример CefSharp WebBrowser в WPF (прозрачность)
Ответы (1)
Это просто быстрое доказательство концептуального хака, основанного на CefSharp.Wpf.Example
, чтобы увидеть, выполнимо ли это. В зависимости от того, что вы хотите, я думаю, что можно сделать (некоторые) веб-страницы прозрачными.
На картинке ниже вы видите CefSharp.Wpf.Example
поверх Visual Studio. Также есть частичное окно DevTools от CefSharp впереди в левом нижнем углу.
Вот что я сделал (см. рисунок ниже):
- Добавьте
WindowState="Normal" Opacity=".75" AllowsTransparency="True" WindowStyle="None" MinHeight="400" MinWidth="600"
к элементу<Window>
элементаMainWindow.Xaml
. - Добавьте вызов где-нибудь, когда браузер инициализируется своим методом
ShowDevTools()
. - Затем я использовал DevTools, чтобы установить альфа-фон
<body>
s на ноль на загруженной странице.
В зависимости от того, что вам нужно, вам придется поэкспериментировать со значениями непрозрачности WPF самостоятельно. Кроме того, в зависимости от веб-страницы, которую вам нужно отобразить, удаление фактического цвета фона на разных элементах может потребовать некоторой настройки. Как вы можете видеть из приведенного выше примера, достаточно было установить одно значение, чтобы удалить белый фон на странице поиска Google. Вы можете использовать метод ExecuteJavascriptAsync()
, упомянутый на вики-странице часто задаваемых вопросов CefSharp, для внедрения JavaScript на страницы, на которые вы переходите.