将WPF WebBrowser转换为WinForms

时间:2011-01-18 17:42:07

标签: c# wpf winforms

我正在尝试使用以下代码将WPF WebBrowser控件转换为WinForms WebBrowser控件:

System.Windows.Forms.WebBrowser wb = myWebBrowser as System.Windows.Forms.WebBrowser();

我收到此错误:

  

“无法通过引用转换,装箱转换,拆箱转换,换行转换或空类型转换将类型'System.Windows.Controls.WebBrowser'转换为'System.Windows.Forms.WebBrowser'”

任何帮助都将不胜感激。

谢谢!

4 个答案:

答案 0 :(得分:3)

您无法在这两个类之间进行转换。它们是完全独立的实现,一个用于WPF,另一个用于Windows Forms。

如果您必须使用Windows窗体Web浏览器,则需要从头开始实例化一个,并根据需要复制单个设置。

答案 1 :(得分:1)

wpf和winforms控件非常不同(苹果和橘子),不能相互转换。

答案 2 :(得分:1)

您可以使用ElementHost将WPF System.Windows.Controls.WebBrowser添加到WinForms表单。

但我不知道你为什么要这样做。

答案 3 :(得分:0)

你不能:它们是两个完全不同的类层次结构(显然都是ActiveX组件的包装器)

如果你绝望,你可以尝试通过Handle字段获取信息,但这会让你进入无人管理的土地。