2010-11-18 15 views
5

私はうまくいけば些細な質問があります。現在、私の会社はあまりにも不明瞭な言語(SyngergyDE)で作業しており、当社の製品内でSilverLightアプリケーションを呼び出す必要があります。残念ながら、このあいまいな第三者言語のみ(現在)WPF画面のオープンをサポートしています。つまり、私は「WebBrowser」コントロールを含む小さなWPFユーザーコントロールを開発し、SilverlightアプリケーションのURIに移動すると考えました。これは正常に動作し、私はSLアプリケーションを見ることができます。ここで私の質問です - 私たちは、SLアプリケーション上に "閉じる"ボタンを持っており、ユーザーがそのボタンをクリックすると、ウィンドウを閉じることができます。WPF WebBrowserの中のSilverlight App?

「SLアプリケーションの終了」をWPFユーザーコントロールに伝達する方法については、誰も提案しているので、WPFユーザーコントロール全体も閉じます。ここで、接着剤として

おかげでみんな、

-Tom

答えて

1

イベントハンドラをWebBrowser.Navigatedイベントにアタッチします。その後、コントロールを閉じるには、その時間:「ブランクについて」URLでWPFで

HtmlPage.Window.Navigate(new Uri("about:blank", UriKind.Absolute)); 

ナビゲートイベントが発生 - :

は、Silverlightアプリケーションの使用中の閉じるボタンを持っています。

+0

ありがとう!これは魅力的に機能しました。 – arctek

0

JavaScriptを使用してHTML DOM。

たとえば、SLアプリケーションの閉じるボタンをクリックすると、フラグを設定するJavascriptコードがSilverlightでトリガーされるか、HTMLドキュメントのイベントが発生します。

WPFコントロールは、HTML + JavaScriptのフラグをポーリングしたり、HTMLドキュメントイベントをリッスンしたり、ユーザーコントロールを閉じることができます。

+0

html文書のクローズイベントをリスンするにはどうすればよいですか?私はjavascriptを介してWebBrowserコントロールを閉じることができます(ただし、User Controlは開いたままです)。しかし、コントロール(WPF <-WebBrowser)のリスナーを「プラグイン」する方法がわかりません。これが愚かな質問であれば私の謝罪です。 – arctek