我们有一个使用Winforms开发的产品 - .net 2.0。现在我们正在考虑将此应用程序迁移到WPF。是否可以在WPF中使用相同的Winform组件。
或者如果不可能,那么哪种方法可以将此应用程序迁移到WPF。
答案 0 :(得分:5)
是。您可以使用ElementHost将WPF内容放入Windows窗体控件,并使用WindowsFormsHost直接在WPF元素中托管Windows窗体组件。
答案 1 :(得分:1)
使用DataGridView
在Switch On The Code上有一个教程。
您需要添加对System.Windows.Forms
和WindowsFormsIntegration
的引用才能获得WindowsFormsHost
。
您可以在XAML以及C#代码中执行此操作:
<WindowsFormsHost Grid.Row="0">
<WinForms:DataGridView x:Name="_MyDataGrid">
</WinForms:DataGridView>
</WindowsFormsHost>
C#
_MyHost = new WindowsFormsHost();
_MyDataGrid = new System.Windows.Forms.DataGridView();
....
_MyHost.Child = _MyDataGrid;
_Container.Children.Add(_MyHost);