Toggle navigation
首页
关于TCPGAME
快乐分享
联系我们
C# WPF 火狐浏览器GeckoWebBrowser 的嵌入使用
Lonner
时间:2021-03-31 09:26:03
阅读:5000
### 1. 新建WPF项目 ![新建wpf工程](//tcpgame.com\mdimg\61c675b6-cb13-4c10-8ef2-c3b839c22ae4_1新建wpf工程.png "新建wpf项目") ### 2. Nuget中导入Gecko的支持库 右键点击解决方案中项目的引用,弹出的菜单中,点击管理Nuget程序包: ![](//tcpgame.com\mdimg\8e3b88e7-82bd-4909-8efc-9ada3bcfb06e_2打开nuget.png) Nuget管理器中,切换到浏览Tab: ![](//tcpgame.com\mdimg\a4fcef20-5517-46b2-9f71-0752a26f608c_3切换到浏览.png) 在搜索栏中输入Gecko45 并按下回车,在搜索到结果中(如果不能显示搜索结果,那就是网络被墙了,请科学上网后再操作),选中如下的支持库,并在右方点击安装按钮: ![](//tcpgame.com\mdimg\50515170-9762-482e-a857-afdf46a93164_4输入搜索并安装.png) 安装过程需要点击一个确认按钮,然后等待安装完成 ![](//tcpgame.com\mdimg\e5d5ab74-3fdf-465b-b7d9-3a5a31e24423_5确定安装.png) 安装完成后,在引用的列表中出现如下,证明安装成功,此时在项目中也会出现一个名为Firefox的文件夹 ![](//tcpgame.com\mdimg\8f5113f2-5986-44fb-a8ff-8e6121e10c35_6安装完成.png) ### 3.WPF中添加WinForm控件支持 因为引入的Gecko中的控件是winform控件,所以WPF项目中需要添加WinForm控件支持。 右键引用->添加引用,打开引用管理器 ![](//tcpgame.com\mdimg\355d4007-60b5-4562-b6e8-04cdd0d97d8b_8.添加引用.png) 选中程序集,然后把滚动条拉到最底部,找到 System.Windows.Forms 与 WindowsFormsIntegration 两项并勾选他们,然后点击确定按钮 ![](//tcpgame.com\mdimg\0192ba5e-f186-481b-9cfd-d4827ccbac55_9勾选WPF使用winform支持引用.png) ### 4. 界面布局文件XAML中加入Winform控件组件 打开MainWindow.xaml,在Grid标签之间添加如下代码: ``` <WindowsFormsHost x:Name="winFH"> <wf:Panel></wf:Panel> </WindowsFormsHost> ``` 注意添加引用: ```xmlns:wf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"``` ![](//tcpgame.com\mdimg\06c6fa1e-20d5-48bb-b5aa-2f4cd9987fe4_10加入一行Winform支持.png) ### 5. 逻辑文件CS中添加控制代码 在MainWindow.xaml边界界面按下F7,进入代码的编辑界面。改为如下代码: ``` using Gecko; using System.Windows; using System.Windows.Forms; namespace GeckoDemo { public partial class MainWindow : Window { private GeckoWebBrowser geckoWeb; public MainWindow() { InitializeComponent(); //初始化火狐内核 Xpcom.Initialize("Firefox"); //创建GeckoWebBrowser,注意这个控件是Winform类型 geckoWeb = new GeckoWebBrowser { Dock = DockStyle.Fill }; //GeckoWebBrowser添加到界面中支持Winform的控件内 winFH.Child.Controls.Add(geckoWeb); //打开网址 geckoWeb.Navigate("tcpgame.com"); } } } ``` ### 运行 点击运行,可以看火狐浏览器GeckoWebBrowser嵌入WPF运行效果: ![](//tcpgame.com\mdimg\7928a169-3cd8-41a0-b3c4-48a2195920bd_11运行效果.jpg) 完成!!!
上一章:没有了
下一章:C# 内嵌火狐浏览器GeckoWebBrowser 与JavaScript的交互