存储用作WPF应用程序图标的图像的推荐方法是什么?

时间:2009-06-29 18:08:54

标签: wpf xaml resources icons

我正在WPF中创建一个非常标准的业务应用程序。我需要使用工具栏和菜单项的图标,以及其他一些地方。我想知道三个(可能是相互关联的)事情的答案:

  • 我应该以什么格式使用图片? ICO? PNG? JPG? GIF?
  • 如何在VS2008项目中存储图像?作为磁盘上的文件?在RESX文件中?在资源字典中? (如果在资源字典中,那么在字典“编译”之前它们是否也必须在磁盘上?)
  • 文件在我的项目中妥善存储后,如何最好地引用它们?

谢谢!

更新

我接受了Chris Nicol的回答,但我想澄清一下我为纪录所做的事情。

  1. 我在项目中创建了一个名为Images
  2. 的文件夹
  3. 我将我的图片放入此文件夹,并确保他们的构建操作是“资源”。
  4. 我创建了一个名为ResourceDictionary的{​​{1}} XAML文件。在此内容中,我为每个文件创建了一个条目,格式如下:Images.xaml
  5. 然后我根据需要以通常的方式引用了这个BitmapImage x:Key="FooIcon" Source="Images\foo.png"
  6. 我主要担心的是,生成的图像会作为资源添加到DLL中,并且可以通过WPF的资源系统访问它们。

1 个答案:

答案 0 :(得分:6)

  1. 格式 - 我会说.PNG来自经验,但.ICO可能会满足您的需求,具体取决于原始图形的来源和大小。

  2. 存储 - 它们是项目中的资源,很可能是在文件夹结构下创建的。然后可以通过XAML访问它们。

  3. 引用 - 这取决于应用程序的体系结构。在最基本的解决方案中,您将拥有一个样式来设置工具栏的图像源属性(实现取决于您的控件)。每个工具栏都将实现样式资源。

  4. 希望有所帮助!