WPF WebBrowser控件看起来很棒,但随着时间的推移,关于WinForms WebBrowser的知识很多,而且很难忽略像csExWB这样的工作。很高兴知道.NET 3.5的WPF WebBrowser控件在WinForms WebBrowser控件中存在哪些功能缺陷或优点。特别是,是否可以在WPF WebBrowser之上构建类似csExWB的功能?
答案 0 :(得分:9)
从wpf组件的一整天沮丧中,这就是我发现的。显然,winforms webbrowser暴露了更多的方法和属性。例如,wpf webbrowser中没有IsWebBrowserContextMenuEnabled
,ActiveXInstance
等。
此外,每个document
属性包含不同类型的对象。 Winform包含System.Windows.Forms.HtmlDocument
类型的文档,其中包含一些有趣的方法和属性,如PointToClient
和GetElementFromPoint
。 Wpf webbrowser文档是一个Object
类型的文档,可以强制转换为mshtml.HtmlDocument
,它只提供标准html + javascript文档中可用的相同方法和属性。不是很令人兴奋。我不知道它是否可以被转换为其他东西(有用),因为没有关于它的真实文档。
我可以注意到winforms webbrowser的唯一缺点是组件内的按钮和滚动条与wpf本机控件的外观不同。
答案 1 :(得分:3)
我必须承认我不知道这些差异,但如果遇到问题,您可以使用WindowsFormsHost在WPF中托管winform版本,like so?最终,两者都是shdocvw的包装,所以像“纯WPF”这样的原则并不适用。