我正在使用以下代码在程序中加载图像:
Image img = new Bitmap(@"C:\Users\******\Desktop\*****\bin\Debug\image.png");
我想保持位置静态,所以当我在另一台PC上运行程序时,我不必手动编辑路径。
我正在试验apps.config文件,因为我听说这是我的解决方案所在。
对此有任何帮助将不胜感激!
答案 0 :(得分:2)
更好的解决方案是将其作为程序集的一部分嵌入resx文件中。这样你就不必担心文件的位置不同了。
答案 1 :(得分:2)
为什么不使用Environment.SpecialFolder? 显然,这不是静态的,但您不必编辑任何内容。如果它们尚不存在,您实际上只需在桌面上创建文件夹。
string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
或者使用System.Environment.CurrentDirectory,因为它看起来就像你正在放置它...
Image img = new Bitmap(Environment.CurrentDirectory + @"\image.png");
答案 2 :(得分:0)
静态属性
AppDomain.CurrentDomain.BaseDirectory
指向应用程序启动的路径,即使当前目录指向其他位置。您可以使用它来查找与可执行文件位于同一目录中的文件。但是,对于小图像(即GUI组件),将它们作为资源嵌入是可行的方法。