我的解决方案中的文件夹"images"中有一些图像。在库中的一个类中,我想决定在运行时应该使用哪个映像。我在用户控件的代码后面执行此操作的旧方法是将所有图像加载到类的构造函数中,如下所示:
myImage = FindResource("MyImageResource") as BitmapImage;
然后在运行时确定要使用哪个图像。
但这似乎在我的类库中的任何类中都不起作用,更不用说它似乎违背了我所读到的关于MVVM的所有内容。
关于我要做什么的更多信息本质上,我有一个模型类,它存储了插入的驱动器上的所有信息,比如驱动器类型和名称。
一种视图模型类,用于监视何时插入或删除任何驱动器。
视图类是一个面板,它包含一组类似于系统驱动器的按钮。
澄清我的问题:
我应该如何在WPF类库中存储和加载图像?
我应该在哪个类中(在运行时)确定要使用哪个映像(在MVVM模式中)?
到目前为止,我决定给模型类一个BitmapImage属性,我在它的构造函数中为表示其驱动器类型的Image设置了这个属性:
DiskImage = new BitmapImage(new Uri("/MyApp;component/Images/DiskDrive.png", UriKind.Relative));