2010-12-22 175 views
5

调用System.Windows.Browser.HtmlPage.Window.Invoke(“openWindow”)之间的区别Silverlight 4其中“openWindow”是一个js函数,它调用window.open并调用System .Windows.Browser.HtmlPage.PopupWindow(someUri,“_blank”,null)?在Silverlight中打开一个新窗口

回答

3

区别在于拨打window.open不是已批准的标准。 Silverlight API中的PopupWindow方法的目的是提取浏览器之间的open实现的变体。

例如,用于打开选项的属性名称可能因浏览器而异。使用PopupWindow您的代码可以使用强类型HtmlPopupWindowOptions类以一致的方式定义这些选项。 Silverlight运行库负责处理向浏览器发出的请求,以适合主机浏览器的方式执行所需的操作。

+0

很好的答案,谢谢! – PhilBrown 2010-12-23 15:28:47

0

此外,如果您在响应用户操作时打开弹出窗口,PopupWindow将与弹出窗口阻止程序配合使用。