2015-05-14 112 views
1

控制,我在我的html页面使用从DLL控制作为从调用第三方DLL

<object id="ATT" width="100%" height="100%" 
     classid="CLSID:E20EC898-E4EE-4A20-A5A5-E10144FDC6BA" 
     codebase="AvtechMediaControl.cab#version=1,1,7,6" VIEWASTEXT> 
</object> 

但我想访问同一个进入我的WPF应用程序。

当我尝试选择工具箱中的DLL,我得到以下错误,

“以下控件成功添加到工具箱中,但在活动设计未启用”

我需要一种将它添加到我的WPF项目中的方法。我不想使用网页浏览器控件。

+0

我编辑了你的标题。请参阅:“[应该在其标题中包含”标签“](http://meta.stackexchange.com/questions/19190/)”,其中的共识是“不,他们不应该”。 –

回答

2

ActiveX控件不能直接添加到WPF视图,但可以托管在Windows窗体控件中。 WPF可以托管WinForms控件。微软有一个walk through describing the process

对此的简短描述是,您将为您的XAML视图添加WindowsFormHost。 MSDN的步行虽然显示这是在后面的代码中完成的,但WindowsFormHost可以添加到XAML中。然后,您将WindowsFormHost的Child设置为ActiveX控件。这将不得不在后面的代码中完成,因为不支持在XAML编辑器中添加ActiveX控件。

您还需要了解WPF中托管控件的行为。没有WPF内容可以重叠托管控件。托管的控件将始终绘制您的WPF内容的顶部。