我的应用程序中有一个图像,我的winforms中有一张图片
public static string Correct_Icons = @"C:\Users\xyz\Documents\Visual Studio 2008\Projects\FileShareMgmt\FileShareMgmt\Resources\Correct.png";
public static string warning_Icon = @"C:\Users\xyz\Documents\Visual Studio 2008\Projects\FileShareMgmt\FileShareMgmt\Resources\Warning.png";
cell.Value = Image.FromFile("Resources/warning_Icon);
但我只想要相对路径,而不是完整路径。
例如我想要这个
public static string Correct_Icons = "\Resources\Correct.png";
和续 ... / 不工作
答案 0 :(得分:16)
对于我的程序,Path.GetDirectoryName (Assembly.GetExecutingAssembly().Location)
返回
C:\code\test\Junk\bin\Debug
。
cell.Value = Image.FromFile(
Path.Combine (
Path.GetDirectoryName (Assembly.GetExecutingAssembly().Location),
"Resources/warning_Icon"));
当然,通常您会将资源嵌入到程序集中,除非您想在不重新编译的情况下更改它们。
答案 1 :(得分:0)
在此解决方案之后,我的问题得以解决:
string[] s = { "\\bin" }; string path = Application.StartupPath.Split(s, StringSplitOptions.None)[0] + "\\Images\\On24.png";