PPT插件开发 - 在VSTO中使用webview2
问题
VSTO开发中,可以使用winform wpf这些进行开发, 但是这些都不如web开发者多,学习周期和通用性都不是很高,所以我决定找一个用web展示UI的方案
winform 中是可以使用webbrowser控件的,并且可以进行本地通讯,嵌入web的方案整体是ok的
踩坑
内置webbrowser
内置的webbrowser 是 ie内核 对ie内核...

于是笔者查看了市面上其他的插件发现大家都用的是cefsharp,然鹅很不幸的是,这东西又大又不好集成,费了九牛二虎之力也没能集成到VSTO里面,各种报错
webview2
幸运的是巨硬刚刚推出的webview2完美符合我的要求,集成也非常简单,下面就来看下webview2如何集成到VSTO的插件之中,下面是集成之后的预览,UI不用愁啦,哈哈

创建一个VSTO程序
取名PowerPointAddIn-Webview2 Framework版本4.6.2或以上

创建完成后

安装webview2
打开NuGet 搜索WebView2找到 Microsoft.Web.WebView2就可以安装上了,怎么样 够简单吧

集成到winform
右键方案->Add New Item->Form(Winfows Forms)

在winform的toolbox中找到webview2 拖入form中调整一下属性
Dock属性使其铺满formSource中填写要访问的网址, 这里我用了three.js的测试地址(http://www.webgl3d.cn/threejs/examples/?q=MMD#webgl_loader_mmd)

测试结果
修改ThisAddIn.cs中直接弹出winform窗口

F5运行!(由于3d模型比较大,要加载一会才行)


目前webview2已经集成进来,交互问题我们下一次再说,这个其实可以扩展到很多地方,巨硬明显是想抢electron的份额,并且win11天然集成webview2,有兴趣的小伙伴可以研究一下哦

浙公网安备 33010602011771号