如何将图像资源的名称作为字符串获取
本文关键字:字符串 获取 图像 资源 | 更新日期: 2023-09-27 18:11:26
我尝试了一些方法来获得一个名称,包括调查PropertyItems
和老式的ToString()
方法,试图获得一个图像资源的名称作为一个字符串。
我在资源文件中有一个图像选择,命名为。我没有问题得到的图像显示使用resource.imageName
。我想尝试得到 imageName
作为一个字符串,以减少错误和打字错误在我的代码的其他地方。
使用resource.imageName.ToString()
为我提供了字符串System.Drawing.Bitmap
您可以创建一个函数:
public static string GetPropertyName<T>(Expression<Func<T>> propertyExpression)
{
return (propertyExpression.Body as MemberExpression).Member.Name;
}
然后这样使用:
public class ClassName {
public Foo { get; set; }
}
...
...
...
var inst = new ClassName();
var propertyName = GetPropertyName(() => inst.Foo);
这不是我谁想出这个,我把它从其他主题,并运行它,看看它是否有效,但我的浏览器崩溃了,我找不到链接到原来的主题。我一找到我的帖子就会编辑它。
编辑:我找到了!这就是我截取片段的地方。好运。编辑2:如果你能得到资源。imageName,然后将它传递给GetPropertyName函数。如果没有,我想我的答案是不完整的
在Visual Studio 2015中可以使用nameof()
string s = nameof(Resource1.myfile); // s = "myfile"