我正在创建一个带有10个组合框(ApplicationUser
)的GPA计算器来选择成绩点和10个文本框(CmbGrade1, CmbGrade2, CmbGrade3,...,CmbGrade10
)来输入学分,我创建了一个函数将其应用到每个组合盒子
因为我必须将textbox1,textbox2,textbox3,...,textbox10
与其旁边的textbox.text
相乘。
我正在使用for循环为10个组合框调用此功能 所以请指导我循环组合框
CmbGrade.selecteditem
答案 0 :(得分:0)
作为评论中提到的蓝狗,您的函数应该返回一个值。如果您不知道Function and Sub
之间的区别,可以使用此link。现在您可以使用以下代码循环遍历窗体控件内的控件。希望它会对你有所帮助。
考虑以下两种方法:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
For i As Integer = 0 To 2
Dim combo As ComboBox = DirectCast(Me.Controls.Find("CmbGrade" & i, True)(0), ComboBox)
Dim txtBox As TextBox = DirectCast(Me.Controls.Find("TextBox" & i, True)(0), TextBox)
Dim x = Gpa(CSng(combo.SelectedItem), CSng(txtBox.Text))
Next
End Sub
Public Function Gpa(ByVal grade As Single, ByVal credit As Single) As Single
Return grade * credit
End Function