Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#参考/调用文件夹中我的代码中的图像_C#_Image_Visual Studio 2010_Add In - Fatal编程技术网

C#参考/调用文件夹中我的代码中的图像

C#参考/调用文件夹中我的代码中的图像,c#,image,visual-studio-2010,add-in,C#,Image,Visual Studio 2010,Add In,我正在使用Visual Studio 2010和C#。建立一个添加Im。我正在尝试利用/调用我代码中驻留在“图像”文件夹中的图像。因此,在解决方案资源管理器中,我已将一些图像添加到我的“图像”文件夹中。我还有一个在菜单中生成多个项目的多项目列表(取决于循环计数器)。代码如下 Item item = new Item(); item.Caption = Convert.ToString(_propertySet.GetProperty(ELEMENT_NAME)); item.Message =

我正在使用Visual Studio 2010和C#。建立一个添加Im。我正在尝试利用/调用我代码中驻留在“图像”文件夹中的图像。因此,在解决方案资源管理器中,我已将一些图像添加到我的“图像”文件夹中。我还有一个在菜单中生成多个项目的多项目列表(取决于循环计数器)。代码如下

Item item = new Item();
item.Caption = Convert.ToString(_propertySet.GetProperty(ELEMENT_NAME));
item.Message = Convert.ToString(_propertySet.GetProperty(ELEMENT_NAME));
item.Enabled = true;
item.Image = Image.FromFile(@"C:\Users\MyId\Desktop\Project\Stuff\Images\cmdContextMenu.png");
item.Tag = _propertySet.GetProperty(ELEMENT_NAME);

我使用计算机上的整个路径访问图像,并从“图像”文件夹中引用它。现在,如果我要完成这个,打包,然后把它移到其他人的机器上,我想找到这个图像会有问题。这个问题是否有某种解决方案,或者不必参考整个路径的方法??这是一个模糊的问题/场景,但如果您能在这方面提供帮助,我们将不胜感激。提前谢谢

我认为这种情况下有两种可能:1)映像是静态的,并与外接程序一起部署;或2)映像是按用户自定义的

如果是按用户定制的,则需要他们将图像放置在该文件夹中。这意味着您应该真正配置该位置

但我猜这是一个静态图像。在这种情况下,您只需要将其添加为资源,并引用它


这已经在其他帖子中讨论过:

这一行的
Image.FromFile
肯定会有问题,因为不是所有的机器都有与您相同的文件路径。为什么您可以从资源文件加载图像..您考虑过吗..什么意思。我不太明白你说的从资源文件加载图像是什么意思。但是,是的,我同意Image.FromFile方面在移动到另一台机器时会失败,因为我遵循了提供的链接。我添加了一个资源,并在代码中调用了它。这似乎太好了,不可能是真的,因为它工作得很好。但再次感谢你的帮助。你为我节省了数小时的研究和工作。再次感谢!