Reputation: 21
I'm trying to work with the Chrome DevTools Protocol in CefSharp. I tried out the example for DevTools. Calling methods is working perfectly.
https://github.com/cefsharp/CefSharp/blob/master/CefSharp.Example/DevTools/DevToolsExtensions.cs
const string methodName = "Page.captureScreenshot";
var result = await devToolsClient.ExecuteDevToolsMethodAsync(methodName);
Now I was wondering if it is possible to work with events as well. e.g. "Network.dataReceived" https://chromedevtools.github.io/devtools-protocol/tot/Network/
I tried following:
public ChromiumWebBrowser chromeBrowser;
public void InitializeChromium()
{
chromeBrowser = new ChromiumWebBrowser("https://stackoverflow.com");
this.Controls.Add(chromeBrowser);
chromeBrowser.Dock = DockStyle.Fill;
chromeBrowser.IsBrowserInitializedChanged += ChromeBrowser_IsBrowserInitializedChanged;
}
private void ChromeBrowser_IsBrowserInitializedChanged(object sender, EventArgs e)
{
chromeBrowser.GetDevToolsClient().DevToolsEvent += OnDevToolsEvent;
chromeBrowser.ShowDevTools();
}
private static void OnDevToolsEvent(Object source, DevToolsEventArgs e)
{
//how to use that handler?
//not called!
}
The "OnDevToolsEvent" is never called. Any ideas? :) And thanks in advance.
Upvotes: 1
Views: 1027
Reputation: 21
Solved the issue by using "Network.enable" which enables the handler. Thanks @amaitland
const string methodName = "Network.enable";
var result = await devToolsClient.ExecuteDevToolsMethodAsync(methodName);
Upvotes: 1