在窗口窗体应用程序中使用图像的相对路径

本文关键字:图像 相对 路径 窗口 窗体 应用程序 | 更新日期: 2023-09-27 18:36:58

我搜索了问题的答案,并尝试了许多解决方案,但无法解决

我有一个 Windows 表单应用程序,我必须在图片框中动态设置图像,并且我已经使用以下代码成功执行此操作

    pictureBox2.Image = Image.FromFile("C:/Users/user/Documents/College Work/4th Year/Advanced Net/Projects/Game/Resources/" + Quiz1FromFile.Q1Ans + ".jpg"););

如何修改上述路径,以便在移动项目位置时它可以工作。"游戏"是窗口表单项目的名称

在窗口窗体应用程序中使用图像的相对路径

最佳方法是在项目属性的设置选项卡中添加应用程序设置。
例如,调用此属性"ImagePath"并将此属性设置为默认开发路径。

完成此操作后,您将在 app.config 文件中有一个条目(当编译YourApplicationName.exe.Config时变为 ),其中包含默认路径的值。

<applicationSettings>
    <YourAppNamespace.Properties.Settings>
        <setting name="ImagePath" serializeAs="String">
            <value>C:/Users/user/Documents/College Work/4th ......</value>
        </setting>
    <(YourAppNamespace.Properties.Settings>
</applicationSettings>

此文件将与应用程序一起分发,您可以使用部署过程更改该路径。

在代码中,您可以使用以下方法引用存储在配置文件中的路径

string imagePath = Properties.Settings.Default.ImagePath;
pictureBox2.Image = Image.FromFile(Path.Combine(imagePath, Quiz1FromFile.Q1Ans,  ".jpg"));

这样,您就无需对应用程序内图像文件夹的路径进行硬编码,也无需处理相对路径。您只需在目标计算机上将此值设置为存储映像文件。

你需要做两件事。首先,文件名应该是与可执行文件所在的位置相关的相对路径。第二件事是你需要确保图像确实在那里。可以使用生成后事件将映像复制到目标文件夹路径。

看看这里。