Ответ 1
comboBox.SelectedIndex = -1;
работает для меня.
Вы делаете что-нибудь еще в своем обработчике событий? Используете ли вы привязку данных?
У меня есть ComboBox в WPF, чей ItemsSource установлен в список программно. Как я могу очистить выделение в обработчике событий? Я пробовал:
comboBox.SelectedIndex = -1;
comboBox.SelectedItem = null;
comboBox.SelectedValue = null;
comboBox.SelectedValue = "";
Ни один из них не имеет никакого эффекта.
comboBox.SelectedIndex = -1;
работает для меня.
Вы делаете что-нибудь еще в своем обработчике событий? Используете ли вы привязку данных?
comboBox.SelectedIndex = -1;
Это путь. Я не знаю, почему это не работает для вас; возможно, обработчик события для SelectedIndexChanged
изменяет значение?
Я обнаружил, что мне нужно добавить:
comboBox.Text = "";
чтобы очистить текст.
Я хочу удалить событие ComboBox
в DropDownClosed
другого ComboBox
. Поэтому я использовал следующий код внутри первого события ComboBox
DropDownClosed
private void comboBox1_DropDownClosed(object sender, EventArgs e)
{
this.comboBox.ItemsSource = null;
}