C# 在文件夹中找不到图像
我需要向project添加一些新标志,所以我下载了它并将新图像插入到Images文件夹中。每个图像名称都有CountryData.cs中可用的国家ID,这是字典结构:C# 在文件夹中找不到图像,c#,wpf,io,filepath,C#,Wpf,Io,Filepath,我需要向project添加一些新标志,所以我下载了它并将新图像插入到Images文件夹中。每个图像名称都有CountryData.cs中可用的国家ID,这是字典结构: private static readonly Dictionary<string, string> _englishNameByIso2 = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase) { {"A
private static readonly Dictionary<string, string> _englishNameByIso2 = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase)
{
{"AF", "Afghanistan"},
{"AX", "Åland Islands"},
{"AL", "Albania"},
{"DZ", "Algeria"},
{"AS", "American Samoa"},
...
对于IO异常,它将返回null,其他图像将正确显示在组合框中
我还尝试将新图像的动作构建更改为资源,但没有成功
文件夹中的映像未设置操作生成。我做错了什么?我真的不明白为什么没有找到新的图像 将映像文件的构建操作设置为Resource,并通过以下方式加载它:
你为什么再问你的问题@rene可能会添加新的细节,我得到了帮助,你不觉得吗?那就编辑你的老问题吧。特别是有人可能再次建议将文件标记为资源。我正在尽可能地提高效率,正如我回忆的那样,我以前在不同的上下文中看到过这一点,我开始搜索是的,因此我可以提供一个我知道有答案的副本。在那次搜索中,你删除的问题出现了。但是我收到了消息,我会停止搜索,我希望有人能发现你代码中的输入错误,并给出答案。祝你好运@我知道。。抱歉,rene,但我对这个我无法解决的问题感到有点沮丧,希望你没有接受:你是说嵌入式资源?将其更改为资源以使用包URI。这是在WPF中加载图像文件资源的方法。我甚至有这个问题,你能帮我吗?
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
var countryId = value as string;
if (countryId == null)
return null;
try
{
var path = $"/FamFamFam.Flags.Wpf;component/Images/{countryId.ToLower()}.png";
var uri = new Uri(path, UriKind.Relative);
var resourceStream = Application.GetResourceStream(uri);
if (resourceStream == null)
return null;
var bitmap = new BitmapImage();
bitmap.BeginInit();
bitmap.StreamSource = resourceStream.Stream;
bitmap.EndInit();
return bitmap;
}
catch
{
return null;
}
}
var path = $"pack://application:,,,/FamFamFam.Flags.Wpf;component/Images/{countryId.ToLower()}.png";
var bitmap = new BitmapImage(new Uri(path));