文章 / 公众号历史文章
『Excel进化岛精华曝光』 VSTO插件开发使用WPF窗体交互
在《Excel进化岛》知识星球里,笔者平均一天会发布2 5个主题,一些短小精悍的小知识分享,最近分享较多的是动态数组公式和VBA零散主题。 笔者在当下的项目里,因为用户电脑配置太高,很多都是高分屏电脑,普通VSTO的开发,使用WinForm作窗体交互时,会出现高分屏电脑显示严重的变形。 在Excel
在《Excel进化岛》知识星球里,笔者平均一天会发布2-5个主题,一些短小精悍的小知识分享,最近分享较多的是动态数组公式和VBA零散主题。
笔者在当下的项目里,因为用户电脑配置太高,很多都是高分屏电脑,普通VSTO的开发,使用WinForm作窗体交互时,会出现高分屏电脑显示严重的变形。
在Excel催化剂和EasyShu的插件里,偶尔也会遇到部分人反馈这个问题,当下虽然使用了SunnyUI这个控件库来开发,但也很难避免高分屏问题(SunnyUI可以保证控件不变形,但显示的窗体太小了,高分屏下还是难以看清楚)。
还好,VSTO或Winform项目里,还有一条活路,可以使用Winform嵌套WPF自定义控件的方式引入WPF控件,最终满足显示不变形。
笔者也只能霸王硬上弓,再次走上WPF的学习道路。所幸已经算是入门了,可以有所产出。
在此也给大家展示下作品
窗体显示,使用SunnyUI套用WPF控件

任务窗格也正常显示

WPF是一种很先进的UI解决方案,可以轻松应对高分屏不失真、变形问题。但同时也增大了学习难度。
对于广大OFFICE开发人员,其实也没必要把它学习得太深入,完全可以使用WinForm的方式来驾驭WPF的开发,虽然没能获取到MVVM的这种先进的开发模式,但贵在简单,未来有机会也给大家普及一下WPF的开发知识。
当前的demo使用了一款很流行的WPF控件库handyControl,可以轻松设计出漂亮的界面来。大量现成的效果直接拿来就用。

笔者现在大量的分享,特别是带示例案例分享,都转移到了知识星球,想高效深入学习,可以进来看看。本文的demo示例已经分享在其中了。https://t.zsxq.com/0cn1c2ig6
公众号写文章太正式,很多精彩内容就没有搬到公众号里发表,知识星球的学习、互动体验更好,还可以下载附件立刻练习。
喜欢这样的学习、提问环境的,可以加入Excel进化岛知识星球,一起学习成长,众多大伽老师陪你一起进步。
