silverlight 关闭当前浏览器
在silverlight工程中添加"System.Windows.Browser"引用
在承载sl的页面(NamespaceTestPage.aspx或NamespaceTestPage.html)添加JS函数
<script type="text/javascript">
function CloseWindow() {
window.close();
}
</script>
在sl工程中调用JS函数
HtmlPage.Window.Invoke("CloseWindow","");
至此,就可以完成页面的关闭了,而且会有关闭提示
如果想要取消这个提示怎么办呢,可以添加一条语句
<script type="text/javascript">
function CloseWindow() {
window.opener = null;
window.close();
}
</script>
但是该语句仅在IE6有效,IE7,8就无效了,那我们再添加一条语句
<script type="text/javascript">
function CloseWindow() {
window.opener = null; //只在IE6下有效,可以不提示关闭浏览器
window.open('', '_self'); //原理就是将_self(自身)设置为一个window.open的引用后,用window.close(),就可以关闭了!
window.close();
}
</script>
到此,就可以实现无提示关闭了,那么怎么样添加自己的提示呢,在sl中加一个if判断语句
if(HtmlPage.Window.Confirm("您确定关闭***?"))
{
HtmlPage.Window.Invoke("CloseWindow","");
}