嵌入的资源 和 Resource

我们将资源文件添加至.net C#工程时,文件的生成操作有多种可选方式。通常用的多的是两种:[嵌入的资源]和[Resource],如果从需要从代码中使用这些资源文件,不同生成操作则对应不同的引用方式:

 

[嵌入的资源]

Assembly assembly = Assembly.GetAssembly(typeof(App));

var stream = assembly.GetManifestResourceStream("WpfApp1.Resources.XMLFile1.xml");

 

[Resource]

var uristr = "pack://application:,,,/WpfApp1;component/Resources/XMLFile2.xml";
var uri = new Uri(uristr, UriKind.RelativeOrAbsolute);
var stream = Application.GetResourceStream(uri).Stream;

 

这里有几点要特别注意:

1.  [嵌入的资源]是wpf程序的默认生成操作,[Resource]则是winfrom程序的默认生成操作;记忆中,如果在wpf程序中将图像资源的生成操作设置为[Resource],那么使用设计器的时候可以直接使用这些图像,但运行时则会报错

2.  在非wpf程序的项目(比如控制台命令程序)中,并不能生成pack前缀的uri,会报错提示 "无效的 URI: 指定的端口无效"。貌似是没有注册对pack协议支持,如何添加支持希望有大侠指点。

 

转载于:https://www.cnblogs.com/GuoRL/p/9318042.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值