在我的wpf应用程序中,我试图使用Windows窗体控件....但我收到一个错误,即 错误类型' WindowsFormsHost'没找到。验证您是否缺少程序集引用,并且已构建所有引用的程序集。 任何人都可以帮助我完成它......以下是我的代码
c#:code
public Window2()
{
InitializeComponent();
System.Windows.Forms.PictureBox PictureBox1 = new System.Windows.Forms.PictureBox();
windowsFormsHost1.Child = PictureBox1;
PictureBox1.Paint += new System.Windows.Forms.PaintEventHandler(PictureBox1_Paint);
}
xaml:code
<WindowsFormsHost Height="175" HorizontalAlignment="Left" Margin="10,10,0,0" Name="windowsFormsHost1" VerticalAlignment="Top" Width="255" />
答案 0 :(得分:14)
通常当我们看到错误时说:
找不到类型
SomeClass
。验证您是否缺少程序集引用,并且已构建所有引用的程序集
可能会有一些问题。这意味着我们没有在项目中添加相关dll的引用,或者我们没有正确导入命名空间。
要查找我们需要添加引用的dll,我们通常会转到MSDN,使用搜索字词&#39; SomeClass
类&#39; ...在您的情况下搜索&#39; { {1}}课程&#39;。对WindowsFormsHost
课程执行此操作,我们会看到:
请注意以下行:
程序集:WindowsFormsIntegration(在WindowsFormsIntegration.dll中)
查看Visual Studio中的添加引用对话框,我们可以看到WindowsFormsHost
的dll条目:
这就是我们如何找出要导入的dll的方法。现在,我们只需要确保我们正确地导入命名空间,无论是在C#:
WindowsFormsIntegration
在XAML中,在使用using System.Windows.Forms.Integration;
控件之前,您无需为WindowsFormsIntegration
dll添加XML命名空间。
WindowsFormsHost
有关详细信息,请参阅MSDN上的<WindowsFormsHost>
<!-- Some WinForms Control -->
</WindowsFormsHost>
类页面。