我想在我的wpf应用程序中使用我的winform - 这可能吗?
答案 0 :(得分:4)
是的 - 这是可能的。
使用ElementHost将WPF内容放入Windows窗体控件, 并且还使用WindowsFormsHost直接在WPF元素中托管Windows窗体组件。
答案 1 :(得分:1)
是的,WPF应用程序可以托管WinForm控件和窗口。
还有一种方法可以打包在WinForm中使用的WPF控件,但它更复杂,绝对不推荐。
WPF上的大多数书籍都会教你如何托管WinForm控件。
答案 2 :(得分:1)
在WPF应用程序中显示托管WinForms Browser控件(带有禁用的快捷方式)的小例子:
<Window x:Class="how_to_make_winform_run_on_wpf.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:wf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"
>
<WindowsFormsHost>
<wf:WebBrowser WebBrowserShortcutsEnabled="False" Url="http://stackoverflow.com"></wf:WebBrowser>
</WindowsFormsHost>
</Window>
当然,您应该添加对WinFormsIntegration和System.Windows.Forms程序集的引用。 使用此示例时,您会注意到所有标准的WinForms控件都使用平面样式。要为WinForms控件启用类似WinXP的样式,请输入
public App()
{
System.Windows.Forms.Application.EnableVisualStyles();
}
在App.xaml.cs
中