WPF WebBrowser中的Silverlight应用程序?

5
我有一个简单的问题。目前,我的公司使用一种比较晦涩的语言(SynergyDE),我们需要在产品中调用SilverLight应用程序。不幸的是,这个晦涩的第三方语言只支持打开WPF屏幕。因此,我想开发一个包含“WebBrowser”控件并导航到Silverlight应用程序URI的小型WPF用户控件。这很好用,我能够看到SL应用程序。这里是我的问题 - 我们在SL应用程序上有一个“关闭”按钮,当用户“点击”该按钮时,我们希望窗口关闭。

有人有什么建议,如何将"关闭SL应用程序"的信息传递给WPF用户控件,以便整个WPF用户控件也关闭?

谢谢大家,

-汤姆

2个回答

1

将事件处理程序附加到WebBrowser.Navigated事件。

让Silverlight应用程序中的关闭按钮使用:

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

当WPF中的Navigated事件触发时,如果URL为"about:blank",那么就是关闭控件的时候了。

0

在这里使用Javascript和HTML DOM作为粘合剂。

例如,当单击SL应用程序关闭按钮时,让Silverlight触发一些Javascript代码来设置标志,或者替代地引发一些HTML文档事件。

WPF控件可以在HTML + Javascript中轮询该标志,或者替代地侦听该HTML文档事件,然后关闭用户控件。


如何监听HTML文档关闭事件?我可以通过JavaScript关闭WebBrowser控件(但用户控件仍然打开),但我不知道如何“插入”一个侦听器到控件(WPF <- WebBrowser)?如果这是一个愚蠢的问题,请原谅我。 - arctek

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接