2009-12-10 69 views
2

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

什么是堆栈溢出推荐的方式来保存图片到磁盘在这种情况下?

回答

1

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

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

所以,我创建了网站,从我的XBAP部署应用程序,它接收的URL字符串某图片ID上.ashx handler,查询从DB的图像,并返回下拍摄图像(context.WriteBinary)正确的内容标题“image/jpeg”。

在我的XBAP,而不是Image控制,我把WebBrowser控制,提供了正确的URI(您可能需要a trick to bind the Source property)。您只能指定一个指向XBAP应用程序的原始站点的URI。它可以是一个绝对路径,或者它可以使用特殊的语法,包括pack://siteoforigin:,,

Voila,现在图片支持标准的浏览器上下文菜单,带有“保存...”,“设置为背景”和所有其他有用的元素:-)

相关问题