我想在多个 WinRT 项目之间共享一些 Assets ,例如图标。
对于 WPF,这很简单(差不多):
- 为 Assets 创建一个库项目
- 将 Assets 标记为资源以将它们嵌入到生成的程序集中
- 从其他项目中引用 Assets 项目
- 使用有点奇怪的“pack”URI 格式从 XAML 代码引用图标。
与 Windows 运行时共享它们的最佳方式是什么?
有没有这样的资源嵌入和共享能力,或者其他解决方案?
如果没有,我想我可以使用“复制为链接”将它们添加到每个项目中,但我希望有一个干净的方法。
编辑:我已经开始像在 WPF 项目中那样天真地做这件事:
- 我创建了一个新的库项目“Assets”并将图像添加到里面作为“Content”
- 我从我的主要项目中引用了这个项目
但我无法引用具有新 URI 格式的图像:
<Image Source="ms-resource://Assets/Files/Mushroom.png"></Image>
最佳答案
最后我得到了正确的结果。
完整流程如下:
- 创建您的图书馆项目,添加您的图像并将其构建操作设置为“内容”
- 从您的主项目中引用库
要引用图像本身,您必须:
- 使用“ms-appx”架构,而不是您可能在 Google 上找到的“ms-resource”
用///而不是//
指定绝对路径
最重要的是不要相信 Visual Studio 设计器:
- 如果设置正确,它可能不会显示图像
- 当你弄错时,它可能会显示它(来自以前的成功),但在运行时你什么也得不到!
希望这有助于...
关于c# - 在项目之间共享图像等 Assets 的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24998312/