Ваша проблема может заключаться в том, какие события вы используете для своего кода.Заполните поле со списком в событии загрузки формы.
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
ComboBox2.Items.Add("Apple")
ComboBox2.Items.Add("Samsung")
ComboBox2.Items.Add("Sony")
End Sub
Затем в событии ComboBox SelectionChangeCommitted укажите соответствующие значения.
Private Sub ComboBox2_SelectionChangeCommitted(sender As Object, e As EventArgs) Handles ComboBox2.SelectionChangeCommitted
Dim s As String = ""
Select Case ComboBox2.SelectedItem.ToString
Case "Apple"
s = "1000"
Case "Samsung"
s = "500"
Case "Sony"
s = "300"
End Select
Label1.Text = s
End Sub
Было бы лучше использовать класс, предложенный @Джими, но я предоставляю это решение, если вы еще не знакомы с классами.
Select Case можно заменить серией операторов If, если инструкция Case еще не была введена в вашем курсе.
If ComboBox2.SelectedItem.ToString = "Apple" Then
s = "1000"
End If
РЕДАКТИРОВАТЬ
Private Function GetSelectedRadioButton(ctrl As ContainerControl) As RadioButton
Dim rButton As RadioButton = ctrl.Controls.OfType(Of RadioButton).FirstOrDefault(Function(r) r.Checked = True)
Return rButton
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'Use Decimal datatype for money
Dim Total As Decimal
'Get cost form radio button
Dim rb As RadioButton = GetSelectedRadioButton(Me)
'Put the cost for the each radio button in the .Tag property of the button
Total += CDec(rb.Tag)
'Get cost from check boxes
For Each ctrl As Control In Controls
If TypeOf ctrl Is CheckBox AndAlso DirectCast(ctrl, CheckBox).Checked Then
'Store the cost in the .Tag property of the checkbox
Total += CDec(ctrl.Tag)
End If
Next
'Get cost from combobox
Dim d As Decimal
Select Case ComboBox2.SelectedItem.ToString
Case "Apple"
d = 1000
Case "Samsung"
d = 500
Case "Sony"
d = 300
End Select
Total += d
Dim Quantity as Decimal = CDec(txtQuantity.Text)
Total = Quantity * Total
Label1.Text = Total.ToString
End Sub