Silverlight 5的弹出窗口

时间:2012-10-25 06:36:18

标签: silverlight cross-domain silverlight-5.0

我对SL5弹出窗口有一些奇怪的问题。

我的SL5应用程序可以运行并从位于其他域的WCF服务获取数据。单击一个按钮,将调用一些服务方法并返回文件路径。从服务返回时,结果用于打开弹出窗口。由于未使用用户实例化以下代码来实现此目的

new Repository().SaveExporttoExcelData(builder.ToString(), (result) =>
                {
                    this.Dispatcher.BeginInvoke(() =>
                    {
                        var options = new System.Windows.Browser.HtmlPopupWindowOptions();
                        options.Left = 0; options.Top = 0; options.Width = 80; options.Height = 60;

                        string servicePath=  path;
                        if (result != null)
                        {
                            string excelPath = servicePath.Replace("\\","/") +"/"+ result.ToString();
                            System.Windows.Browser.HtmlPage.Window.Eval(string.Format("window.open('{0}','{1}','{2}')", excelPath, "new", options.ToString()));
                        }
                        else
                        {
                            MessageDialog.Show("Error in downloading file. Please try again.");
                        }
                    });
                });

如果我从VS运行SL5应用程序并且服务指向prod服务环境,这可以正常工作。但是当我在prod web上托管xap时,同样的SL不起作用。我在Citrix上,同样也在托管网络的同一网络上工作。在打开弹出窗口之前,我还关闭了代理连接。

生成的网址很好,弹出窗口暂时显示并关闭而不下载文件。但如果我复制URL并在浏览器中打开,我可以下载该文件。我检查了弹出窗口阻止程序设置和代理连接。

0 个答案:

没有答案