Avalonia跨平台入门第二十一篇之玩耍CEF

发布时间 2023-07-06 12:11:39作者: China Soft

在前面分享的几篇中咱已经玩耍了Popup、ListBox多选、Grid动态分、RadioButton模板、控件的拖放效果、控件的置顶和置底、控件的锁定、自定义Window样式、动画效果、Expander控件、ListBox折叠列表、聊天窗口、ListBox图片消息、窗口抖动、语音发送、语音播放、语音播放问题;今晚接着研究CEF去加载网页,下面是加载高德地图效果:

 

 

直接上GitHub的地址:

https://github.com/CefNet/CefNet

1、在入口进行初始化设置:

  1.  
    var settings = new CefSettings();
  2.  
    settings.MultiThreadedMessageLoop = !externalMessagePump;
  3.  
    settings.ExternalMessagePump = externalMessagePump;
  4.  
    settings.NoSandbox = true;
  5.  
    settings.WindowlessRenderingEnabled = true;
  6.  
    settings.LocalesDirPath = Path.Combine(cefPath, "Resources", "locales");
  7.  
    settings.ResourcesDirPath = Path.Combine(cefPath, "Resources");
  8.  
    settings.LogSeverity = CefLogSeverity.Warning;
  9.  
    settings.IgnoreCertificateErrors = true;
  10.  
    settings.UncaughtExceptionStackSize = 8;

2、我直接后台加载测试的:

  1.  
    private void GoToLoadMap()
  2.  
    {
  3.  
    string initUrl = "file:///" + AppDomain.CurrentDomain.BaseDirectory + @"Maps/HeatMap.html";
  4.  
    WebView webView = new WebView();
  5.  
    webView.InitialUrl = initUrl;
  6.  
    RootGrid.Children.Add(webView);
  7.  
    }

3、去下载Chromium Embedded Framework:

https://cef-builds.spotifycdn.com/index.html

4、关于配置

  1.  
    Extract all files into the cef/ directory.
  2.  
    Copy cef/Resources/icudtl.dat into cef/Release/

最终简单的效果先这样吧a8e10bd25030e482a1477322d6fca8fd.png;以后有时间的话,可以再去