是类库是用于将图像存储为WPF项目要使用的资源的正确项目吗?

罗伯特码

我已将一些.jpg文件加载到Visual Studio 2015下的类库项目中,并将它们设置为作为资源生成,并在新建时进行复制。当我将其与WPF项目一起使用时,它似乎可以正常工作。还有另一种将图像存储到DLL中的方法吗?

=====================================

更新3/22/2016 5:02 pm

为了清楚起见,我将ImageSource语句作为Application.Resources部分添加到App.xaml文件中,如下所示:

<ImageSource x:Key="OkImage">pack://application:,,,/MyStyles;component/ok.png</ImageSource>

然后,我在WPF窗口xaml中引用OkImage关键字,如下所示,用于图像控件:

<Image x:Name="image" Source="{DynamicResource OkImage}" 
               Grid.Column="1" HorizontalAlignment="Left" Height="100" Margin="66,25,0,0" Grid.Row="2" VerticalAlignment="Top" Width="100"/>

这就是我将图像从.DLL提取到WPF文件中的方式。带有图像的.DLL的目的是与他人共享它,以便在当前和将来的项目中在控件上使用相同的图像。

米奇

是类库是用于将图像存储为WPF项目要使用的资源的正确项目吗?

绝对地!WPF将此称为资源文件-标记为资源的生成操作”文件然后将这些资源编译到程序集中,在其中可以从c#代码或通过Pack URI通过XAML加载它们这就是WPF应用程序不应使用WinForms样式.resx文件的原因,因为XAML通常无法利用它们。

  • 当在编译时知道资源,或者在构建或部署后不需要更新资源时,可以使用资源文件。
  • 资源文件减少了要分发的文件数量

MSDN:

如果应用程序数据文件必须始终可供应用程序使用,则保证可用性的唯一方法是将其编译为应用程序的主要可执行程序集或其引用的程序集之一。这种类型的应用程序数据文件称为资源文件。-告诉我更多

上:

我已将一些.jpg文件加载到Visual Studio 2015下的类库项目中,并将它们设置为作为资源构建,并在新建时进行复制

在将文件标记为“资源不”时,请勿将其标记为“新时复制”这就破坏了资源文件的目的。您只是在复制一个很可能未被使用的其他图像文件。资源文件应嵌入到程序集中。

上:

还有另一种将图像存储到DLL中的方法吗?

您还可以使用内容文件当事后很可能会更改文件,但又不想重新编译应用程序时,此技术很有用。您的应用程序具有指向其在运行时评估的依存资源的链接。告诉我更多有关内容文件的信息

原始文件的站点我必须承认,刚刚阅读它后我对此并不了解。当在构建时不知道资源时,它似乎很有用;对于访问受限的部分信任应用程序很有用。完全信任的应用程序可能会发现SoOF语法比file://通常需要完整路径的SoOF语法更有用

MSDN对SoOF这么说:

...有时您可能想在程序集和应用程序数据文件之间建立隐式或不存在的关系,包括以下情况:

  • 编译时文件不存在。
  • 您直到运行时才知道程序集需要什么文件。
  • 您希望能够在不重新编译与之关联的程序集的情况下更新文件。
  • 您的应用程序使用大数据文件,例如音频和视频,并且您只希望用户选择下载它们。

告诉我更多有关SoOF的信息

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

是类库是用于将图像存储为WPF项目要使用的资源的正确项目吗?

来自分类Dev

为项目使用“基础”存储库?

来自分类Dev

将源设置为项目内的资源图像

来自分类Dev

我可以在整个项目中使用通用存储库和通用服务类吗?

来自分类Dev

类库可以使用存储在主项目中的函数吗?

来自分类Dev

为UWP设计的新的SvgImageSource类可以在WPF项目中使用吗

来自分类Dev

WPF项目资源的图像停止显示

来自分类Dev

使用parcelable将项目存储为共享首选项吗?

来自分类Dev

从主项目中查找类库的资源

来自分类Dev

如何使用Pods为xcode项目创建存储库?

来自分类Dev

与项目相关的图像的正确存储方式

来自分类Dev

如何根据所选配置将项目构建为可移植类库或普通类库?

来自分类Dev

我可以将Jenkins配置存储在项目存储库中(例如Travis CI)吗?

来自分类Dev

为每个项目创建一个新的存储库是最佳实践吗?

来自分类Dev

将库导入Android项目吗?

来自分类Dev

如何在VS2019中将WPF项目添加到ac#类库项目中

来自分类Dev

当我将WPF UserControl与内置项目以外的其他项目一起使用时,无法找到资源

来自分类Dev

我可以将多个jenkins项目连接到同一Maven存储库吗

来自分类Dev

我们可以将引导程序库用于大型项目吗?

来自分类Dev

如何将 WPF 窗口添加到类库项目

来自分类Dev

Composer创建项目:使用分支的存储库

来自分类Dev

Composer创建项目:使用分支的存储库

来自分类Dev

将EF6添加到剃刀类库项目中以供许多BLAZOR项目共享吗?

来自分类Dev

使用Maven存储库将Java库添加到Android Studio项目

来自分类Dev

多个Gitlab项目可以使用同一Git存储库吗?

来自分类Dev

多个Gitlab项目可以使用同一Git存储库吗?

来自分类Dev

我可以使用Windows服务中在MVC项目中定义的存储库吗?

来自分类Dev

我可以创建Windows Phone 8.0类库项目并在Windows Phone 8.1项目中使用它吗

来自分类Dev

我可以创建Windows Phone 8.0类库项目并在Windows Phone 8.1项目中使用它吗

Related 相关文章

  1. 1

    是类库是用于将图像存储为WPF项目要使用的资源的正确项目吗?

  2. 2

    为项目使用“基础”存储库?

  3. 3

    将源设置为项目内的资源图像

  4. 4

    我可以在整个项目中使用通用存储库和通用服务类吗?

  5. 5

    类库可以使用存储在主项目中的函数吗?

  6. 6

    为UWP设计的新的SvgImageSource类可以在WPF项目中使用吗

  7. 7

    WPF项目资源的图像停止显示

  8. 8

    使用parcelable将项目存储为共享首选项吗?

  9. 9

    从主项目中查找类库的资源

  10. 10

    如何使用Pods为xcode项目创建存储库?

  11. 11

    与项目相关的图像的正确存储方式

  12. 12

    如何根据所选配置将项目构建为可移植类库或普通类库?

  13. 13

    我可以将Jenkins配置存储在项目存储库中(例如Travis CI)吗?

  14. 14

    为每个项目创建一个新的存储库是最佳实践吗?

  15. 15

    将库导入Android项目吗?

  16. 16

    如何在VS2019中将WPF项目添加到ac#类库项目中

  17. 17

    当我将WPF UserControl与内置项目以外的其他项目一起使用时,无法找到资源

  18. 18

    我可以将多个jenkins项目连接到同一Maven存储库吗

  19. 19

    我们可以将引导程序库用于大型项目吗?

  20. 20

    如何将 WPF 窗口添加到类库项目

  21. 21

    Composer创建项目:使用分支的存储库

  22. 22

    Composer创建项目:使用分支的存储库

  23. 23

    将EF6添加到剃刀类库项目中以供许多BLAZOR项目共享吗?

  24. 24

    使用Maven存储库将Java库添加到Android Studio项目

  25. 25

    多个Gitlab项目可以使用同一Git存储库吗?

  26. 26

    多个Gitlab项目可以使用同一Git存储库吗?

  27. 27

    我可以使用Windows服务中在MVC项目中定义的存储库吗?

  28. 28

    我可以创建Windows Phone 8.0类库项目并在Windows Phone 8.1项目中使用它吗

  29. 29

    我可以创建Windows Phone 8.0类库项目并在Windows Phone 8.1项目中使用它吗

热门标签

归档