WebView2 DevToolsProtocolEvent не возникаетC#

Место общения программистов C#
Ответить
Anonymous
 WebView2 DevToolsProtocolEvent не возникает

Сообщение Anonymous »

Я пытаюсь создать приложение, использующее компонент WebView2 WPF. В настоящее время я работаю над регистрацией сообщений и ошибок, записанных кодом JavaScript веб-сайтов, с помощью console.log().
Вот что у меня сейчас есть:

Код: Выделить всё

public partial class WebView2BrowserControl : WebView2
{
private async void OnWebViewLoaded(object sender, RoutedEventArgs e)
{
await EnsureCoreWebView2Async();
if (showDeveloperTools)
{
CoreWebView2.GetDevToolsProtocolEventReceiver("Log.entryAdded").DevToolsProtocolEventReceived += OnConsoleMessage;
CoreWebView2.OpenDevToolsWindow();
}
else
{
CoreWebView2.Settings.AreDevToolsEnabled = false;
}
}

private void OnConsoleMessage(object sender, CoreWebView2DevToolsProtocolEventReceivedEventArgs e)
{
if (e != null && e.ParameterObjectAsJson != null)
{
Trace.WriteLine("WebView2:" + e.ParameterObjectAsJson);
}
}
}
Как видите, я использую метод GetDevToolsProtocolEventReceiver для подписки на события в DevTools. В документации указано следующее:
eventName:String — полное имя события в формате {domain}.{event}.
Для получения дополнительной информации об описании событий DevToolsProtocol и аргументах событий перейдите к средству просмотра протокола DevTools.
... И согласно Просмотру протокола DevTools, событие, которым я являюсь ищем Log.entryAdded.
Теперь проблема в том, что, хотя вызов GetDevToolsProtocolEventReceiver("Log.entryAdded") не генерирует никаких исключений, событие никогда не возникает, даже если я вижу, что что-то регистрируется в DevTools. Я даже пытался написать свои собственные вызовы console.log() в окне DevTools.
Другие вещи, которые я пробовал:
  • использование как автономного установщика Evergreen, который устанавливает WebView2 на компьютер, так и фиксированной версии (версии 87 и 88), которая по сути является портативной версией WebView2
  • с использованием обеих последних стабильных версий Microsoft.Web.View2.Core.dll из NuGet 1.0.705.50 и последней предварительной версии
  • с использованием события Log.entryAdded и Console.messageAdded (устарело)
  • подписка на событие после открытия окна DevTools
Так что же я делаю не так?

Подробнее здесь: https://stackoverflow.com/questions/663 ... ot-raising
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»