c#中图片相对路径怎么设置

在c#中Windows窗体应用类型添加图片时,如何设置图片的相对路径,使其他人在自己的电脑上也能够利用c#打开此图片。以及

img

为什么会出现如图所示的问题?

应该使用相对路径,然后用当前软件目录(appdomain.basedirectory)加相对目录重新组合路径。

使用应用程序域中的 BaseDirectory 属性来获取应用程序的基目录,然后将图片相对路径附加到该路径上以创建完整路径。然后,可以使用 Image.FromFile() 方法来加载该路径中的图像。


string imagePath = AppDomain.CurrentDomain.BaseDirectory + @"\Images\myImage.png";
pictureBox1.Image = Image.FromFile(imagePath);

如有帮助给个采纳谢谢谢谢

不知道你这个问题是否已经解决, 如果还没有解决的话:

  • 您还可以看一下 王进老师的跟着王进老师学开发之C#篇:基础语法课程中的 第一个Windows窗体应用程序小节, 巩固相关知识点
  • 以下回答来自chatgpt:

    问题:如何在c#中设置图片的相对路径以便在不同电脑上使用,并避免类似问题?

    回答:

    1. 在哪里设置相对路径?

    在Windows窗体应用程序中,图片的路径可以在窗体设计器中进行设置,或者在代码中使用相对路径进行设置。

    1. 相对路径应该使用哪些符号?

    在C#中,可以使用相对路径(相对于当前应用程序的根目录)或绝对路径来引用图片。相对路径可以使用"./"或"../"来表示当前目录或上级目录。例如,如果图片位于应用程序的根目录下的Images文件夹中,可以使用相对路径"./Images/image.png"来引用该图片。

    1. 如何确保其他人在运行应用程序时也能够正确看到图片?

    可以将图片和应用程序打包压缩成一个安装程序,在安装程序中将图片和应用程序一同安装到用户的计算机上。这样可以确保所有用户都能够正确看到图片。另外,如果使用相对路径引用图片,应确保图片文件夹的名称和路径都与代码中引用的路径相同。

    代码示例:

    使用相对路径设置图片的代码示例如下:

    //在窗体设计器中设置图片路径 pictureBox1.Image = Image.FromFile("./Images/image.png");

    //在代码中使用相对路径设置图片路径 string imagePath = "./Images/image.png"; pictureBox1.Image = Image.FromFile(imagePath);


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^