2011-01-24 9 views
1

私はSilverlightを初めて使用しているので、私の質問はばかげているかもしれません。しかし、SilverlightのWebBrowserコントロールは、オペレーティングシステムがアプリケーションのエンドユーザーをどのように使用していても同じことを実行できますか?Silverlight WebBrowserコントロール。 WindowsとMacで同じ機能を提供していますか?

私は、ユーザー提供のHTMLを処理する必要があるアプリケーションを実装することを考えています。解析を容易にするためにWebBrowserコントロールを使用する可能性があります。

EDIT

私の心配は、私はおそらく使用する必要がありますIHTMLDocument2IHTMLElementRenderなどのような内部インターフェイスです。しかし、Silverlightがそれらへのアクセスを提供するかどうかはわかりません。

答えて

3

非常に近いはずですが、プラットフォーム間の実装の詳細は若干異なる場合があります。 Windowsでは、WebBrowserコントロールはWebOC(IEのレンダリング技術)を使用し、MacOSではWebKit(Safariのレンダリング技術など)を使用します。

たとえば、WebKitでしか動作しないCSSを使用する場合、Windows WebBrowserコントロールは期待どおりに見えません。

このように、私はあなたが既にクロスブラウザーで動作するものとして表示するHTMLを保つことをお勧めします。これは、残念なことにSilverlightがそれを簡単にしない場所の1つです。ホストOSに委任するだけです。

それ以外は、すごく面白いはずです。あなたが関係している特定の機能が動作しない可能性がありますか?もしそうなら、私は彼らが同じように動作するかどうかを調べることができます。

+0

オースティン、私はHTMLの異なるレンダリングについて特に心配していません。私は、可能な限りWindows上のIEやMac上のSafariに近いレンダリングが良いと言うかもしれません。私の心配は、おそらく 'IHTMLDocument2'、' IHTMLElementRender'などのように使う必要がある内部インターフェースです。Silverlightがそれらにアクセスできるかどうかは分かりません。 – Bobrovsky

+1

ええ、Silverlightはこれらのインターフェイスを公開していないため、WebBrowserコントロールのパブリックAPI(実際にはかなり小さなAPIです)はすべて入手でき、プラットフォーム間で一貫しています(そうでない場合はバグ、意図的ではない)。 –

+0

ありがとう、オースティン!おそらく、私は問題への私のアプローチを再考する必要があります。 – Bobrovsky

関連する問題