如何获得C#项目路径而不是bin / Debug

时间:2015-11-12 06:32:29

标签: c# file path

我需要获得我的项目路径。不是绝对路径,而只是我Resources文件夹的路径。

我正在创建一个WPF应用程序,我需要动态路径到图像和字体。

如何获得绝对路径?

1 个答案:

答案 0 :(得分:1)

  

我需要获取我的项目路径,而不是绝对路径只是我的Resources文件夹的路径

WPF资源是在构建操作设置为“资源”的情况下编译的,因此通常在部署中不会有一个名为“资源”的文件系统文件夹,您可以使用典型的文件I / O从中加载东西。

enter image description here

在这里你可以看到资源是如何嵌入到我生成的程序集中的,请注意.PNGs(这里的视图取自Jetbrains dotPeek ,但Redgate Reflector 也会很好) :

enter image description here

  

我需要图像和字体动态路径

但是,要在“资源”文件夹中加载图片,请尝试以下操作:

    public static BitmapImage GetImage(string iconName)
    {
        BitmapImage icon;
        try
        {
            icon =
                new BitmapImage(
                    new Uri(String.Format("pack://application:,,,/MYNAMESPACEHERE;component/Resources/{0}.png", iconName),
                        UriKind.Absolute));
        }
        catch (UriFormatException)
        {
            icon = new BitmapImage();
        }
        return icon;
    }