Asp.net выпадающий список - Listitem - файл ресурсов - значение - PullRequest
0 голосов
/ 02 ноября 2018

Я получил простой выпадающий список и хотел заполнить этот выпадающий список значениями из файла Resource.resx.

Создание файла ресурсов и добавление значений, каждое из которых разделено знаком "," - это не проблема, а отображение каждого элемента в качестве выбираемых опций для раскрывающегося списка.

мой HTML-код выглядит так:

<asp:DropDownList runat="server" ID="DDL1">
<asp:ListItem  Text="<%$Resources:DropDown, Abteilungen%>"></asp:ListItem>

Примечание Abteilungen - это просто название!

и вот что я пытаюсь сделать:

List<SelectListItem> items = new List<SelectListItem>();
                foreach (string s in Resources.DropDown.Abteilungen.Split(new char[] { ',' }))
                {
                    items.Add(new SelectListItem() { Text = s, Value = s });
                    DDL1.Text = s.ToString();
                }

Результат: В раскрывающемся списке отображаются только полные значения (Значение1, Значение2, Значение3 и т. Д.).

Но не каждое Значение как выбираемый элемент.

Может кто-нибудь помочь мне с этим?

1 Ответ

0 голосов
/ 02 ноября 2018

Представьте себе ...

  • У вас есть 1 запись: "Ключ, Значение"
  • Вы разделяете это и s = "Ключ"
  • Вы назначаете текст и значение следующим образом: Text = s (Text = "Key"), Value = s (Value = "Key")

Вместо этого используйте эту логику:

  • У вас есть 1 запись: «Ключ, Значение»
  • Вы записываете это в переменную s. В результате: s = "Ключ, Значение"
  • Вы разделяете его и назначаете как: Text = s [0] (Text = "Key"), Value = s [1] (Value = "Value")

    List<SelectListItem> items = new List<SelectListItem>();
    foreach (string s in YOUR_COLLECTION)
    {
        string[] keyValue = s.Split(new char[] { ',' })
        items.Add(new SelectListItem() { Text = keyValue[0], Value = keyValue[1] });
    }
    
...