Вставить элемент в поле со списком в WinForms - PullRequest
3 голосов
/ 01 февраля 2012

В моей программе 2 списка со списками.Я хотел бы добавить элементы ко второму ComboBox только после того, как был выбран элемент из первого ComboBox.

Пока у меня есть это:

InitializeComponent();
comboBox1.Items.Add("Category1");
comboBox1.Items.Add("Category2");
comboBox1.Items.Add("Category3");
comboBox1.SelectedValueChanged += new EventHandler(comboBox1_TextChanged);

private void comboBox1_TextChanged(object sender, EventArgs e)
{
    if (comboBox1.SelectedText.Equals("Category 1"))
    {
        DataTable cat = dataTableAdapter.GetByCategory("category1");
        foreach (DataRow row in cat.Rows)
        {
            comboBox2.Items.Add(row.ItemArray[1]);
        }
    }
}

Ответы [ 2 ]

5 голосов
/ 01 февраля 2012

Примечание от MSDN об использовании ComboBox.SelectedText и стиля DropDownList:

If DropDownStyle is set to DropDownList, the return value is an empty string ("").

Поэтому, возможно, вам придется использовать свойство SelectedIndex или SelectedItem (или изменить стиль ComboBox на один из других типов).

2 голосов
/ 01 февраля 2012

Изменить

if (comboBox1.SelectedText.Equals("Category 1"))

На

if (comboBox1.SelectedItem.ToString().Equals("Category1"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...