本文主要是介绍CefSharp For WPF基本使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Nuget引用
CefSharp.Wpf
CefSharp.Common
cef.redist.x64
cef.redist.x86
直接搜索安装CefSharp.Wpf
即可,因为CefSharp.Wpf依赖于其他三个包,所以会自动安装四个包
先更改设置
指定特定的平台,x64或者x86,默认是Any CPU
不进行配置的话,CefSharp是不支持Any CPU的
WPF写法
xmlns:cefSharpWPF="clr-namespace:CefSharp.Wpf;assembly=CefSharp.Wpf"
<cefSharpWPF:ChromiumWebBrowser Address="url"></cefSharpWPF:ChromiumWebBrowser>
Any CPU的支持
using System.Windows;
using System;
using System.Runtime.CompilerServices;
using CefSharp;
using System.IO;
using System.Reflection;
using System.Windows.Threading;
using CefSharpWpfDemo.Log;namespace CefSharpWpfDemo
{/// <summary>/// Interaction logic for App.xaml/// </summary>public partial class App : Application{public App(){// Add Custom assembly resolverAppDomain.CurrentDomain.AssemblyResolve += Resolver;//Any CefSharp references have to be in another method with NonInlining// attribute so the assembly rolver has time to do it's thing.InitializeCefSharp();}[MethodImpl(MethodImplOptions.NoInlining)]private static void InitializeCefSharp(){var settings = new CefSettings();// Set BrowserSubProcessPath based on app bitness at runtimesettings.BrowserSubprocessPath = Path.Combine(AppDomain.CurrentDomain.SetupInformation.ApplicationBase,Environment.Is64BitProcess ? "x64" : "x86","CefSharp.BrowserSubprocess.exe");// Make sure you set performDependencyCheck falseCef.Initialize(settings, performDependencyCheck: false, browserProcessHandler: null);}// Will attempt to load missing assembly from either x86 or x64 subdir// Required by CefSharp to load the unmanaged dependencies when running using AnyCPUprivate static Assembly Resolver(object sender, ResolveEventArgs args){if (args.Name.StartsWith("CefSharp")){string assemblyName = args.Name.Split(new[] { ',' }, 2)[0] + ".dll";string archSpecificPath = Path.Combine(AppDomain.CurrentDomain.SetupInformation.ApplicationBase,Environment.Is64BitProcess ? "x64" : "x86",assemblyName);return File.Exists(archSpecificPath)? Assembly.LoadFile(archSpecificPath): null;}return null;}}
}
相关资料
Feature Request - Add AnyCPU Support
示例代码
CefSharpWpfDemo
官方资料
Display HTML in WPF and CefSharp Tutorial Part 1
Quick Start
官网
这篇关于CefSharp For WPF基本使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!