我有一个名为 filetypes.resx 的资源文件。一些我如何想出将资源值绑定(bind)到下拉列表的方法,但我不知道如何对 ResourceSet 的值进行排序。

这是我到目前为止所做的,

文件类型.resx

  • 名称,值
  • A,1
  • B,2
  • C,3

  • 绑定(bind)下拉列表的代码
    
    DropDownList1.DataSource = Resources.FileTypes.ResourceManager.GetResourceSet(System.Globalization.CultureInfo.CurrentCulture, true, true);
    DropDownList1.DataTextField = "Key";
    DropDownList1.DataValueField = "Value";
    DropDownList1.DataBind();
    

    结果
     A
     C
     B
    
    As you can see the result is not sorted. Please help me to solve this issue.
    

    提前谢谢了 :)

    最佳答案

    资源集有一个 IDictionaryEnumerator 所以我猜它的项目是 DictionaryEntry 类型的,尝试像这样对数据源进行排序:

    DropDownList1.DataSource = Resources.FileTypes.ResourceManager
        .GetResourceSet(System.Globalization.CultureInfo.CurrentCulture, true, true)
        .OfType<DictionaryEntry>()
        .OrderBy(i => i.Value);
    

    嗯,我没有打开视觉工作室,所以如果它不能立即工作,请不要怪我:)

    关于c# - 如何在 C# 中对 ResourceSet 进行排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1700240/

    10-13 03:11