c# - 我如何将图像存储在类库中并从任何类访问它

标签 c# wpf visual-studio mvvm

我的解决方案中的“图像”文件夹中有一些图像。我想从库中的一个类中决定在运行时应该使用哪个图像。我从用户控件后面的代码中执行此操作的旧方法是将所有图像加载到类的构造函数中,如下所示:

myImage = FindResource("MyImageResource") as BitmapImage;

然后在运行时确定要使用哪个图像。

但这似乎不适用于我的类库中的任何类,更不用说它似乎与我阅读的有关MVVM的所有内容背道而驰。

有关我要做什么的更多信息
本质上,我有一个模型类,该模型类可存储已插入的驱动器上的所有信息,例如驱动器类型及其名称。

一个 View 模型类,监视何时插入或卸下任何驱动器。

而 View 类是一个面板,其中包含类似于系统驱动器的按钮集合。

为了澄清我的问题:

我应该如何在WPF类库中存储和加载图像?

我应该在哪个类中(在运行时)确定要使用哪个镜像(以MVVM模式)?

最佳答案

到目前为止,我决定要做的就是为模型类提供一个BitmapImage属性,该属性在其构造函数中设置为Image,以使用以下行来表示其驱动器类型:

DiskImage  = new BitmapImage(new Uri("/MyApp;component/Images/DiskDrive.png", UriKind.Relative));

关于c# - 我如何将图像存储在类库中并从任何类访问它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36304800/

相关文章:

wpf - 如何在WPF中使用GDI+绘图?

javascript - Javascript 项目的 Visual Studio 构建事件

c++ - 我如何(动态地)链接到 Windows 上的 math.h 函数?

c# - ASP.NET 设置 GridView 列最大宽度大小

c# - 使用与绑定(bind)不同的数据源将列动态添加到 Gridview

c# - 正确删除 StyleCop R# 插件

visual-studio - 什么取代了 Visual Studio 2019 中的代码分析?

c# - 将 ContentControl 绑定(bind)到 UserControl,并重用同一实例

c# - Operator = 没有为类型 UIElement 和 UIElement 定义..?

c# - 如何在运行时在 WPF 中正确添加启用拼写检查的文本框?