C# 用项目中文件夹内的图像填充组合框

C# 用项目中文件夹内的图像填充组合框,c#,wpf,C#,Wpf,好的,图像位于“项目内部”的文件夹中,构建操作是资源。我的问题是如何将这些图标放在组合框中 我认为这不是重复,因为我搜索了,只找到了项目中没有嵌入文件夹的结果 这是我的代码:(我从搜索中得到的,但我忘记了网站) List items=newlist(); var assembly=assembly.getExecutionGassembly(); var resourcesName=assembly.GetName().Name+“.g.resources”; var stream=assem

好的,图像位于“项目内部”的文件夹中,构建操作是资源。我的问题是如何将这些图标放在组合框中

我认为这不是重复,因为我搜索了,只找到了项目中没有嵌入文件夹的结果

这是我的代码:(我从搜索中得到的,但我忘记了网站)

List items=newlist();
var assembly=assembly.getExecutionGassembly();
var resourcesName=assembly.GetName().Name+“.g.resources”;
var stream=assembly.GetManifestResourceStream(resourcesName);
var resourceReader=新的resourceReader(流);
foreach(resourceReader中的DictionaryEntry项)
{
项目。添加(项目。值);
}
comboBox.ItemsSource=项目;
//它起作用了,但这是我得到的
icons/bbinq.ico
图标/bbt.ico
icons/begr.ico
图标/徽标1.ico
icons/logo.ico
icons/mepv1.ico
icons/mepv2.ico
icons/sbtm.ico
//我需要的是这样(也区分大小写)
BBINQ.ico
BBT.ICO
贝格·伊科
LOGO 1.ICO
LOGO.ICO
MEPV1.ico
MEPV2.ico
SBTM.ICO

您只想显示大写文件名吗?尝试
items.Add(System.IO.Path.GetFileName(item.Value.ToUpper())
或者可能
GetFileName withoutextension
。我相信您可以使用Directory.GetFiles(Path.GetDirectoryName(userSuppliedName),Path.GetFileName(userSuppliedName)).FirstOrDefault();获取区分大小写的文件名。然后,您需要使用string.split或GetFileName()从目录中拆分名称。您的问题是如何在下拉框中以图像的形式直观地获取图标?或者只是想得到你想要的文件名?只是文件名先生
List<object> items = new List<object>();
var assembly = Assembly.GetExecutingAssembly();
var resourcesName = assembly.GetName().Name + ".g.resources";
var stream = assembly.GetManifestResourceStream(resourcesName);
var resourceReader = new ResourceReader(stream);
foreach(DictionaryEntry item in resourceReader)
{
    items.Add(item.Value);
}
comboBox.ItemsSource = items;

//it's working but this is what I get
icons/bbinq.ico
icons/bbt.ico
icons/begr.ico
icons/logo 1.ico
icons/logo.ico
icons/mepv1.ico
icons/mepv2.ico
icons/sbtm.ico

//what I need is like this (case sensitive also)
BBINQ.ico
BBT.ICO
BEGR.ico
LOGO 1.ICO
LOGO.ICO
MEPV1.ico
MEPV2.ico
SBTM.ICO