В ComboBox.Items
есть три варианта: 0.25, 0.50, 0.75
. Теперь пользователь записывает значение в ComboBox
, например. 1
, и теперь выбирает один из этих элементов, нужный comboBox.Text = 1.25
(выбор первого варианта).Отформатированный текст на SelectedIndexChanged в Combobox
public string cmbBxText = string.Empty;
private void LengthCmbBx_SelectedIndexChanged(object sender, EventArgs e)
{
this.lengthCmbBx.Text =
(Convert.ToDouble(cmbBxText)
+ Convert.ToDouble(this.lengthCmbBx.SelectedItem)).ToString();
}
private void lengthCmbBx_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyCode != Keys.Up
&& e.KeyCode != Keys.Right
&& e.KeyCode != Keys.Left
&& e.KeyCode != Keys.Down)
{
cmbBxText = this.lengthCmbBx.Text;
}
}
Этот код устанавливает Text = 0.25
. Я хочу, например, вывод entered value + selected item
. 1.25
, когда пользователь вводит 1
и выбирает 0.25
. И когда я отлаживаю вышеуказанный код, событие SelectedIndexChanged
выполняется дважды, точка разрыва показывает comboBox.Text = 1.25
, но не по форме.
Что ваш вопрос/проблема? –
Это нормальное поведение ComboBox. Является ли использование двух отдельных элементов управления (TextBox и ComboBox) вне вопроса? Если вам просто интересно, все в порядке, но это может сэкономить вам много головной боли, пытаясь заставить ComboBox сделать то, что он не собирается делать. –