我尝试了几种获取名称的方法,包括调查PropertyItems
和使用老式ToString()
方法尝试以字符串形式获取图像资源的名称。
我在资源文件中有一个名为image的图像选择。我没有问题可以使用显示图像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);
并不是我想出这个问题的,我从其他主题中获取并运行它以查看它是否有效,但是我的浏览器崩溃了,我找不到原始主题的链接。找到后,我将立即编辑我的帖子。
编辑:我找到了!这是我摘录的地方。祝你好运。
Edit2:如果您能够轻松获取resource.imageName,则只需将其传递给GetPropertyName函数即可。如果没有,我想我的答案是不完整的
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句