Как перерыть C# DropDownList программно

Если вы используете зефир 3, вы можете использовать для этого поле Pluck .

С зефиром 2 используйте параметр only для Nested .

# 2.x
class ParentSchema(ma.Schema):
    children = fields.Nested('ChildIdSchema', many=True, only='id')

# 3.x
class ParentSchema(ma.Schema):
    children = fields.Pluck('ChildIdSchema', 'id', many=True)

10
задан itsmatt 15 May 2009 в 15:04
поделиться

5 ответов

foreach (ListItem li in dropdownlist1.Items)
{
    if (li.Value == textBox1.text)
    {
       // The value of the option matches the TextBox. Process stuff here.
    }
}

Это мой совет, как узнать, есть ли значение в раскрывающемся списке.

22
ответ дан 3 December 2019 в 14:06
поделиться

DropDownList наследует Коллекция элементов из ListControl . Поскольку Items является массивом, вы можете использовать следующий синтаксис:

dropdownlist1.Items.Contains (textbox1.Text) как логическое значение.

7
ответ дан 3 December 2019 в 14:06
поделиться

Я бы составил список раскрывающихся списков, а затем использовал бы linq для его выбора.

List<DropDownList> list = new List<DropDownList>();
list.Item.Add(dropdown1);
list.Item.Add(dropdown2); 
.... (etc)

var selected = from item in list.Cast<DropDownList>()
               where item.value == textBox1.text
               select item;
2
ответ дан 3 December 2019 в 14:06
поделиться

Одна строка кода разделена для удобства чтения.

this.DropDownList1.SelectedItem = this.DropDownList1.Items
     .SingleOrDefault(ddli => ddli.value == this.textbox1.value);
0
ответ дан 3 December 2019 в 14:06
поделиться

Если вы не хотите использовать LINQ:

        List<ComboBox> dropDowns = new List<ComboBox>();
        dropDowns.Add(comboBox1);
        dropDowns.Add(comboBox2);

        bool found = false;
        ComboBox foundInCombo = null;
        int foundIndex = -1;

        for (int i = 0; i < dropDowns.Count && found == false; i++)
        {
            for (int j = 0; j < dropDowns[i].Items.Count && found == false; j++)
            {
                if (item == textBox1.Text)
                {
                    found = true;
                    foundInCombo = dropDowns[i];
                    foundIndex = j;
                }
            }
        }
0
ответ дан 3 December 2019 в 14:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: