在我的 C# 项目中,我使用工具添加了 PictureBox 控件。我已将图像位置设置为网络上 PNG 的位置,并且我遇到了与其他人相同的问题,如果图像从该目录移动,那么我的程序中的图像将不会显示。
我想在编译时将图像嵌入到 EXE 中,以便图像不依赖于网络上可用的实际文件。我发现一篇文章说让我的图像成为我的项目中的资源。我这样做了,但是当我尝试使用它时,我看到错误:流不是有效的资源文件。
我知道这是可以完成的,但到目前为止,我还没有找到我需要做什么。
我应该如何设置?因为我现在显然设置错误了。
第一步:右键单击项目
Step2:选择属性。
第三步:转到“资源”选项卡。
第四步:点击添加资源下拉菜单,如下图所示。
第五步:选择添加现有文件...
Step6:现在从文件浏览对话框中选择要添加为资源的文件。
Step7:选择添加的图片,并将
Persistence
属性设置为Embedded in .resx
然后图片就会嵌入到您的应用程序中;)
访问它
pictureBox1.Image = Properties.Resources.ImageName;
解决方案1:可以使用
PictureBox
控件在Windows窗体上显示图像。
请按照以下步骤操作:
将
PictureBox
控件从控件 ToolBox
拖放到 WindowsForm
。
现在在按钮 Click 事件处理程序中编写以下代码:
private void Button1_Click(object sender, EventArgs e)
{
pictureBox1.Image = Image.FromFile("path of imge file");
}
解决方案 2:如果您想从项目可执行文件访问图像,您需要将这些图像文件作为
Resources
添加到您的项目中。
请按照以下步骤操作:
第 1 步: 右键单击
Project
第2步:选择
Properties
。
步骤3:转到
Resources
选项卡,如下图所示。
第4步:单击
Add Resource
下拉菜单,如下图所示。
第五步:选择
Add Existing File...
步骤 6: 现在从文件浏览对话框中选择要添加为资源的文件。
示例屏幕截图:
并尝试从以下代码访问该文件:
注意:我添加了名称为:
sudhakar
的资源。
pictureBox1.Image = Properties.Resources.sudhakar;
您可以将图标添加到应用程序的资源中。