我主要来自网络和一点Windows Forms背景。对于一个新项目,我们将使用WPF。WPF应用程序将需要10-20个小图标和图像以用于说明目的。我正在考虑将它们作为嵌入式资源存储在程序集中。那是正确的路吗?
如何在XAML中指定图像控件应从嵌入式资源加载图像?
如果要在多个位置使用图像,那么仅将图像数据加载到内存中一次,然后在所有Image元素之间共享就值得了。
Image
为此,请在以下位置创建一个BitmapSource 作为资源:
BitmapSource
<BitmapImage x:Key="MyImageSource" UriSource="../Media/Image.png" />
然后,在您的代码中,使用类似以下内容的代码:
<Image Source="{StaticResource MyImageSource}" />
就我而言,我发现我必须将Image.png文件设置为具有Resource而不是的构建动作Content。这将导致图像在已编译的程序集中进行。
Image.png
Resource
Content