如何使用foreach创建列表并按字母顺序将项目添加到单选按钮列表中

本文关键字:列表 添加 项目 单选按钮 顺序 foreach 何使用 创建 | 更新日期: 2023-09-27 18:00:55

我从Umbraco中获取Text和键值,并且可以100%工作,但这样我就无法对所获得的列表进行排序。该网站将有不同的语言,我需要在radiobuttonlist上按值(即按语言(排序,而不是按Umbraco中的键排序

有可能吗?

foreach (umbraco.cms.businesslogic.Dictionary.DictionaryItem d2 in d1.Children)
{
    translation = "";
    translation = new umbraco.cms.businesslogic.Dictionary.DictionaryItem(d2.key).Value(lang);
    ListItem list; //start a list
    list = new ListItem(translation, d2.key); //save each item on it
    rbl_items.Items.Add(list); //add them to my radiobuttonlist
}

如何使用foreach创建列表并按字母顺序将项目添加到单选按钮列表中

您可以先在foreach中将每个元素添加到SortedList中。然后,您可以将RadioButtonlist绑定到此SortedList,如本文所示。

SortedList list= new SortedList();
foreach (umbraco.cms.businesslogic.Dictionary.DictionaryItem d2 in d1.Children)
{
    translation = "";
    translation = new umbraco.cms.businesslogic.Dictionary.DictionaryItem(d2.key).Value(lang);
    list.Add(translation, d2.key);
}
//bind to RadioButtonList 
RadioButtonList1.DataSource = list;
RadioButtonList1.DataValueField = "Key";
RadioButtonList1.DataTextField="Value";
RadioButtonList1.DataBind();