我正在开发Silverlight 5,
应用程序具有将用户本地PC中的数据保存为CSV的功能。在开发功能的同时,它在我们的本地PC上运行良好。当我们点击“导出”按钮保存文件对话框出现并保存在选定位置。但在我们的服务器上部署后,保存文件对话框将不会出现在屏幕上。
dialog = new SaveFileDialog();
dialog.DefaultFileName = "Exported Data";
dialog.Filter = string.Format("File Type (*{0}) | *{0}", (".csv"));
dialog.DefaultExt = string.Format("{0}", ("csv"));
//Show the dialog
bool? dialogResult = dialog.ShowDialog();
答案 0 :(得分:1)
确保在“导出”按钮单击事件后立即调用ShowDialog()方法,这是Silverlight安全功能。
请参阅:http://msdn.microsoft.com/en-au/library/system.windows.controls.savefiledialog(v=vs.95).aspx
使用ShowDialog方法显示保存对话框控件。出于安全考虑,Silverlight文件和打印对话框必须由用户启动。这意味着您必须从用户启动的操作(例如按钮的单击事件处理程序)中显示它们。此外,用户启动对话框和显示对话框之间的时间限制。如果超出这些操作之间的时间限制,则会发生异常。