我没有找到与上述主题相关的任何帖子或教程。
基本上,我有一个在webbrowser控件中查看的页面。
页面是一个表单。如果表单提交成功,我将转移到成功页面(使用HttpContext.Current.Server.Transfer),如果我转移到该页面,我想要一些javascript,Silverlight交互让Silverlight应用程序知道表单已提交成功。
感谢
贾马尔。
P.S
我认为的一种方式是,我会从SL应用程序检查webbrowser控件的来源。但是如果使用某些超级链接将页面从页面内部浏览到某个其他页面,则webbrowser的源属性不会更新。
答案 0 :(得分:2)
在该页面上放置以下javascript,这将不会在Silverlight中显示您的WebBrowser控件,表单已成功提交,我建议使用Response.Redirect rathar而不是Server.Transfer。
<script type="text/javascript" language="javascript" > window.external.notify('Your text to pass to Silverlight'); </script>
在Silverlight中注册WebBrowser控件的ScriptNotify事件..
的Xaml:
<WebBrowser x:Name="myWebBrowser" ScriptNotify="myWebBrowser_ScriptNotify" ></WebBrowser>
代码背后:
private void myWebBrowser_ScriptNotify(object sender, NotifyEventArgs e) { string response = e.Value; // e.Value will be "Your text to pass to Silverlight" }