C#为控件添加图像时,导入“本地资源”与“项目资源文件”的区别

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kucoffee12/article/details/83538104

C#为控件添加图像时,“本地资源”与“项目资源文件”的区别
今天早上打开项目的时候,发现导入到“项目资源文件”的图片都显示不出来了,而导入到“本地资源”的图片还可以显示,觉得莫名其妙,就算是重新导入图片到“项目资源文件”也显示不出来,而导入“本地资源”就可以显示。然后打开之前保存的项目版本,发现不管是导入“项目资源文件”还是“本地资源”的图片都可以正常显示。然后把这个可以正常显示的项目换一台计算机,还是只有“本地资源”的可以显示,把 this.btn_Refresh.Image = global::test.Properties.Resources.Refresh;//“项目资源文件”的引用这个语句屏蔽之后再取消屏蔽有可以了,还没找到真正的原因!!!!
在这里插入图片描述
本人理解是:前者是写死在程序里,后者可以在Resource.resx更改图片引用。我尝试了编译好程序再把两者的图片删除,程序还可以运行正常,所以认为图片最后都会被编译到程序中。

如:

   this.btn_start.Image = ((System.Drawing.Image)(resources.GetObject("btn_start.Image")));//“本地资源”的引用
   this.btn_Refresh.Image = global::test.Properties.Resources.Refresh;//“项目资源文件”的引用
   导入“本地资源”的图片,会在form文件下面的form.resx文件里面,可以在多个form界面引用,不可以在里面修改图片的名称;而导入“项目资源文件”的图片,会保存在Properties文件夹下面的Resources.resx文件夹里面,不可以在多个form界面引用,可以在里面修改图片的名称。
   注意:Resources.rexs文件里面的资源可以改名字,有时会自动映射到已运用的资源,有时需要手动修改。

在这里插入图片描述在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/kucoffee12/article/details/83538104