如何从部分信任XBAP应用程序中保存图片?

时间:2009-12-10 11:29:37

标签: xbap savefiledialog partial-trust

我有一个XBAP应用程序,它显示了一些图片,我的用户希望将其中一些保存到磁盘。但我的XBAP应用程序在部分信任模式下运行,因此它无法启动SaveFileDialog,更不用说它无法访问文件系统。

在这种情况下,建议使用Stack Overflow将pic保存到磁盘的方法是什么?

1 个答案:

答案 0 :(得分:1)

我找到了解决问题的方法,我将把这个答案作为社区维基。

正如预期的那样,由于部分信任安全限制,我无法访问文件系统,显示SaveFileDialog或将图像保存到剪贴板。

所以,我在网站上创建了一个.ashx handler,我的XBAP应用程序部署在该网站上,它在URL字符串中接收某个图像ID,从数据库中查询图像,然后返回图像( context.WriteBinary)在正确的内容标题“image / jpeg”下。

在我的XBAP中,我没有Image控件,而是使用WebBrowser控件,提供了正确的URI(您可能需要a trick to bind the Source property)。您只能指定指向XBAP应用程序原始站点的URI。它可以是绝对路径,也可以使用包括pack://siteoforigin:,,

在内的特殊语法

Voila,现在图片支持标准浏览器上下文菜单,“Save ...”,“Set as background”和所有其他有用的元素: - )