C# 在大型WPF项目中使用大型WinForms项目的一部分
这两个应用程序都相当陈旧,并且都是由几个人在几年内构建和维护的。目前,WinForms项目中使用的一个控件确实需要在WPF项目中显示 我已经读过关于在WPF项目中使用WinForms控件的内容,在大多数情况下,如果您只是实例化一个常规的空WinForm控件,它看起来相对简单C# 在大型WPF项目中使用大型WinForms项目的一部分,c#,wpf,winforms,winforms-interop,C#,Wpf,Winforms,Winforms Interop,这两个应用程序都相当陈旧,并且都是由几个人在几年内构建和维护的。目前,WinForms项目中使用的一个控件确实需要在WPF项目中显示 我已经读过关于在WPF项目中使用WinForms控件的内容,在大多数情况下,如果您只是实例化一个常规的空WinForm控件,它看起来相对简单 我想知道的是,您如何在另一个项目中最好地使用大型项目的一部分?理想情况下,在发送并加载所需数据后,WinForm控件将在一个选项卡上的一个WPF控件中可见。以下是一些一般准则 从WPF应用程序中,将项目引用添加到: 您的W
我想知道的是,您如何在另一个项目中最好地使用大型项目的一部分?理想情况下,在发送并加载所需数据后,WinForm控件将在一个选项卡上的一个WPF控件中可见。以下是一些一般准则 从WPF应用程序中,将项目引用添加到:
- 您的WinForms项目
WindowsFormsIntegration
System.Windows.Forms
您可以在“”和“”的MSDN文档中阅读更多内容。谢谢,我将查看这些资源。我只是有点担心,因为WinForms项目中有太多的库、类和不同的项目,所以我不确定将整个大型项目放到WPF项目中是否可行。我们来看看进展如何。
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<TabControl>
<TabItem Header="Old Form">
<WindowsFormsHost Name="WinFormsHost"></WindowsFormsHost>
</TabItem>
</TabControl>
</Grid>
</Window>
public MainWindow()
{
InitializeComponent();
WinFormsHost.Child =
new Form1 { TopLevel = false, FormBorderStyle = FormBorderStyle.None };
}