处理WinForms按钮';s来自单独WPF应用程序的Click事件

本文关键字:WPF 单独 应用程序 事件 Click 按钮 WinForms 处理 | 更新日期: 2023-09-27 18:01:11

摘要:所以我有两个应用程序:一个是WinForms,另一个是WPF。我正试图弄清楚如何点击WinForms应用程序中的按钮,并让WPF应用程序对该点击做出响应。

因此,为了获得更详细的信息,我正在开发一个现有的WinForms应用程序,添加新功能。对于其中一个功能,我需要创建一个单独的WPF应用程序,该应用程序具有位于WinForms应用程序顶部的InkCanvas,并允许用户在WinForms应用软件上绘制。

我在WinForms应用程序上有三个按钮,用于控制InkCanvas:一个用于启用绘图,一个用于擦除,一个用来清除画布。我需要弄清楚的是如何在WPF应用程序中处理这3个按钮的Click事件。

我一直在研究PRISM的EventAggregator(尽管我不知道这是否能在单独的进程之间工作(和WCF。WCF似乎是我应该使用的,但我没有使用它的经验,所以它进展缓慢。我遇到过关于WCF双工服务(链接((链接(的文章

所以我想我的问题是:在单独的WPF应用程序中处理WinForms按钮的Click事件的最佳方法是什么?如果这个问题已经被问过或者太模糊,请提前道歉。

处理WinForms按钮';s来自单独WPF应用程序的Click事件

WinForms可以使用内置在WinForms控件库中的ElementHost控件来承载WPF元素。如果在这种情况下不起作用(因为您使用的是透明度(,您可以尝试使用覆盖在应用程序顶部的新WPF窗口(请参阅WindowsForm APP中的打开WPF窗口(。

通过这种方式,您可以连接事件处理程序和通信,而不必担心IPC方法或管理两个不同可执行文件之间的应用程序寿命。