Silverlight SaveFileDialog.SelectedFile?

Posted

技术标签:

【中文标题】Silverlight SaveFileDialog.SelectedFile?【英文标题】:Silverlight SaveFileDialog.SelectedFile? 【发布时间】:2010-11-23 14:49:18 【问题描述】:

我正在 Silverlight 中处理异常处理对话框。当抛出异常时,会弹出对话框,其中包含有关错误的详细信息,以及一个允许用户保存错误日志并将其发送给开发人员的按钮。当用户单击Save Error Log 按钮时,会弹出SaveFileDialog 并让用户浏览到他想要保存文件的位置。

如何获取所选文件的完整路径(例如C:\Folder\logfile.log)? SafeFileName 属性只给了我文件名(例如logfile.log)。

【问题讨论】:

【参考方案1】:

由于被沙盒化,您无法在 SL 应用程序中获取完整路径。但是,您可以在 WPF 中执行此操作,因为此时您具有完全访问权限。

这并不意味着您不能通过暴露的Stream 将文件保存到给定位置。完整示例here。

            try 
              
                byte[] fileBytes = e.Result as byte[];  

                using ( Stream fs = (Stream)this.dialog.OpenFile() )  
                  
                    fs.Write( fileBytes, 0, fileBytes.Length );  
                    fs.Close();  

                    this.tblError.Text = "File successfully saved!";  
                  
              
            catch ( Exception ex )  
              
                this.tblError.Text = "Error getting result: " + ex.Message;  
              

【讨论】:

以上是关于Silverlight SaveFileDialog.SelectedFile?的主要内容,如果未能解决你的问题,请参考以下文章

缺少 Silverlight“业务应用程序”模板

SharpDevelop with Silverlight

silverlight 2.0 Beta1 下载

安装silverlight失败原因是啥

在打开silverlight项目之前,您需要安装最新的Silverlight开发人员运行时

Silverlight之我见