Member 13739228 Ответов: 1

Как я могу вызвать выбранный элемент в combobox, который был преобразован в double ?


У меня есть проблема при вызове выбранного элемента из combobox, который был преобразован в двойной тип данных.

Что я уже пробовал:

Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click, OS1.SelectedIndexChanged, CSA1.SelectedIndexChanged, ICS1.SelectedIndexChanged, MC1.SelectedIndexChanged, PM1.SelectedIndexChanged, PF1.SelectedIndexChanged, PSPD1.SelectedIndexChanged
        If sender.Text = "A+" Then
            Text = "4.0"
        End If
        If sender.Text = "A" Then
            Text = "4.0"
        End If
        If sender.Text = "A-" Then
            Text = "3.67"
        End If
        If sender.Text = "B+" Then
            Text = "3.33"
        End If
        If sender.Text = "B" Then
            Text = "3.0"
        End If
        If sender.Text = "B-" Then
            Text = "2.67"
        End If
        If sender.Text = "C+" Then
            Text = "2.33"
        End If
        If sender.Text = "C-" Then
            Text = "2.0"
        End If
        If sender.Text = "D" Then
            Text = "1.67"
        End If
        If sender.Text = "D-" Then
            Text = "1.33"
        End If

        Dim total As Double
        total = ((CDbl(3.0 * OS1.SelectedItem) + CDbl(3.0 * CSA1.SelectedItem) + CDbl(2.0 * PM1.SelectedItem) + CDbl(3.0 * MC1.SelectedItem) + CDbl(3.0 * ICS1.SelectedItem) + CDbl(2.0 * PSPD1.SelectedItem) + CDbl(3.0 * PF1.SelectedItem)) / 19.0)
        TextBox1.Text = total
    End Sub
End Class

Richard MacCutchan

Какая проблема? Помимо того, что ваш код делает предположения о выборе в каждом combobox. И 7 различных комбо в одном приложении выглядят довольно чрезмерно.

1 Ответов

Рейтинг:
1

Gerry Schmitz

Подумайте об этом вместо этого:

total = ((3.0 * CDbl(OS1.SelectedItem)) + ... etc 


Предполагая все .SelectedItems не являются нулевыми.