当前位置:   article > 正文

chromiumwebbrowser 使用_CefSharp ChromiumWebBrowser初始化完成后加载网址

isbrowserinitializedchanged

使用CefSharp时,自定义了一个扩展方法LoadPageAsync,用于在ChromiumWebBrowser初始化完成时加载网址,如果初始化未完成时加载Url,会加载不成功。此方法返回Task,返回后的Task不能再调用Start方法,否则会提示:不能对约定样式的任务调用 Start。

代码如下:

public static Task LoadPageAsync(this ChromiumWebBrowser browser, string address = null)

{

var tcs = new TaskCompletionSource();

EventHandler handler = null;

handler = (sender, args) =>

{

if (args.IsBrowserInitialized)

{

browser.IsBrowserInitializedChanged -= handler;

if (!string.IsNullOrEmpty(address))

{

browser.InvokeOnUiThreadIfRequired(() => browser.Load(address));

}

tcs.TrySetResult(true);

}

};

browser.IsBrowserInitializedChanged += handler;

return tcs.Task;

}

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明CefSharp ChromiumWebBrowser初始化完成后加载网址!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/257922
推荐阅读
相关标签
  

闽ICP备14008679号