Вычислять значение автоматически при выборе десятичного числа в combobox

Я пытаюсь получить выбранное значение моих 4-х комбобокс и автоматически добавить их в виде окна. Элементы comboboxes - десятичные числа, 0,75, 0,8 и т. Д. Как добавить все значения, выбранные из списков combobox вместе в текстовое поле?

Я пробовал в течение 5 часов и действительно не могу понять это. FYI im действительно новичок.

Благодаря!

c#,winforms,combobox,

0

Ответов: 1


1

Вы можете обрабатывать событие TextChanged во всех списках, вычислять сумму и присваивать результат текстовому полю.

private void Form1_Load(object sender, EventArgs e)
{
    foreach (var comboBox in this.Controls.OfType<ComboBox>())
    {
        comboBox.TextChanged += ComboBox_TextChanged;
        InitializeComboBox(comboBox);
    }
}

private void ComboBox_TextChanged(object sender, EventArgs e)
{
    double result = 0;
    foreach (var comboBox in this.Controls.OfType<ComboBox>())
    {
        if (!string.IsNullOrEmpty(comboBox.Text))
        {
            result += Convert.ToDouble(comboBox.Text);
        }
    }

    textBox1.Text = result.ToString();
}

private void InitializeComboBox(ComboBox comboBox)
{
    for (int index = 0; index < 10; index++)
    {
        comboBox.Items.Add(index + 0.5);
    }
}
C #, WinForms, выпадающий,
Похожие вопросы