I have an image in my application and i have a picture in my 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);
but i want just want the relative path and not the full path.
eg i want this
public static string Correct_Icons = "\Resources\Correct.png";
and cont. ..../ not working
agent-j
For my program, Path.GetDirectoryName (Assembly.GetExecutingAssembly().Location)
returns
C:\code\test\Junk\bin\Debug
.
cell.Value = Image.FromFile(
Path.Combine (
Path.GetDirectoryName (Assembly.GetExecutingAssembly().Location),
"Resources/warning_Icon"));
Of course, usually you would embed the resources in your assembly unless you want to change them without a recompile.
My issue was solved after this solution:
string[] s = { "\\bin" }; string path = Application.StartupPath.Split(s, StringSplitOptions.None)[0] + "\\Images\\On24.png";
来源:https://stackoverflow.com/questions/6511816/loading-image-from-relative-path-in-windows-forms