C# 如何在Excel操作窗格中使用WPF控件?
有几个参考资料解释了如何将WinForms控件添加到Excel。看看这两个: 他们都提到了使用WPF控件的最新选项(我需要的那个)。不幸的是,这两种资源都缺乏基本部分。缺少一个链接: (1) 微软网站提到了一些视频——确切的标题符合我的要求——但该网站中的所有视频似乎都被删除了 (2) Clear Lines站点包含一个优秀的、循序渐进的项目,但遗憾的是,当提到关键部分时,作者使用了一些VS-2010中不存在的工具(“工具箱的WPF互操作性部分”)+ 根据以上截图和其他网站,我得出结论,缺少的链接,即我的WPF UserControl与其在Excel中的外观之间的连接是某种C# 如何在Excel操作窗格中使用WPF控件?,c#,wpf,winforms,excel,vsto,C#,Wpf,Winforms,Excel,Vsto,有几个参考资料解释了如何将WinForms控件添加到Excel。看看这两个: 他们都提到了使用WPF控件的最新选项(我需要的那个)。不幸的是,这两种资源都缺乏基本部分。缺少一个链接: (1) 微软网站提到了一些视频——确切的标题符合我的要求——但该网站中的所有视频似乎都被删除了 (2) Clear Lines站点包含一个优秀的、循序渐进的项目,但遗憾的是,当提到关键部分时,作者使用了一些VS-2010中不存在的工具(“工具箱的WPF互操作性部分”)+ 根据以上截图和其他网站,我得出结论,
ElementHost
@HighCore的附录。请参阅下面的工具箱:
我不知道你为什么认为有一个“缺失的环节”。这是在winforms上承载WPF内容的标准方法,在上面的链接中有完整的文档记录,还有 给定任何winforms容器(如
表单
或面板
),只需执行以下操作:
var elementHost = new ElementHost
{
Child = new YourWPFContentHere()
};
this.Controls.Add(elementHost);
确保添加对这些程序集的引用:
- 展示中心
- 呈现框架
- System.Xaml
- 窗台
- 窗台组合
作为一名WPF编码器,我也尝试在VSTO应用程序中使用WPF控件,但到目前为止,我不得不使用劣等WinForms方法,因为它是有文档记录的。VSTO应用程序与WPF配合使用非常好。我目前正在重构一个Win-Form Excel应用程序,它使用浏览器将自定义HTML从web服务转换为WPF应用程序。对我来说,最重要的是学习如何在不使用WPF应用程序的情况下操作WPF,使其显示在屏幕上。为了克服这个问题,我从这里开始:这导致了我现在的架构。控件和窗口的WPF库以及Excel插件项目。引用了另一个应用程序,一切都很好。我想我是在寻找一个纯粹的WPF解决方案,然后。顺便说一句:视频和“工具箱的WPF互操作性部分”肯定都不见了。@swiss_程序员我不熟悉“工具箱”(不管是什么),但上面的代码应该可以工作。Toolbox=Ctrl-Alt-X在Visual Studio中。HighCore:你有VSTO的经验吗?很难找到关于它的好信息(比如这篇文章的一个主题)。好吧,你让我想起一位同事,他像小说家一样高速键入HTML。那是在引入可视化HTML工具之前。在被XAML吓倒后,我正在慢慢学习如何使用它。我会试试你的建议。