c#WPF - 列表框中的资源名称

时间:2017-08-14 13:26:17

标签: c# wpf

我尝试从properties.resources获取所有资源名称并使用它们填充列表框。 这是代码:

static string GetNameOf<T>(Expression<Func<T>> property)
{
    return (property.Body as MemberExpression).Member.Name;
}
private void button_Click(object sender, RoutedEventArgs e)
{
    var s = GetNameOf(() => Properties.Resources.Lil);
    MessageBox.Show(s);
}

(使用此按钮和消息框我尝试输出)

这没关系,但问题是我必须单独使用每个资源。我的想法是把名字告诉最资源的资源。也许很容易,但我仍然学习,我仍然是编码的新手。

1 个答案:

答案 0 :(得分:1)

试试这个:

var properties = typeof(Properties.Resources).GetProperties(
    System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic |
    System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Static);

foreach (var propertyInfo in properties)
{
    var s = propertyInfo.Name;
    if(s != "ResourceManager" && s != "Culture")
    {
        MessageBox.Show(s);
    }
}