Vb.net 数据在记录中丢失 Private Sub btnNextStudent\u Click(发送者作为对象,e作为事件参数)处理btnNextStudent。单击 如果txtExam1.Text>100或txtExam2.Text>100或txtExam1.Text
这是我现在拥有的代码,我试图将输入到文本框“txtStudentName”、“txtExam1”和“txtExam2”中的数据保存在记录中。唯一的问题是,每次单击按钮“btnNextStudent”时,数据都会丢失。我完全不知道我做错了什么,也不知道如何修复它 谢谢原因如下: StudentRecords(索引)。StudentName一次又一次地被替换。您只需给它一个新值。这在字符串中是不可能的。如果要跟踪多个值,应该创建一个包含字符串的“列表”Vb.net 数据在记录中丢失 Private Sub btnNextStudent\u Click(发送者作为对象,e作为事件参数)处理btnNextStudent。单击 如果txtExam1.Text>100或txtExam2.Text>100或txtExam1.Text,vb.net,Vb.net,这是我现在拥有的代码,我试图将输入到文本框“txtStudentName”、“txtExam1”和“txtExam2”中的数据保存在记录中。唯一的问题是,每次单击按钮“btnNextStudent”时,数据都会丢失。我完全不知道我做错了什么,也不知道如何修复它 谢谢原因如下: StudentRecords(索引)。StudentName一次又一次地被替换。您只需给它一个新值。这在字符串中是不可能的。如果要跟踪多个值,应该创建一个包含字符串的“列表” Private Sub btnNextStud
Private Sub btnNextStudent_Click(sender As Object, e As EventArgs) Handles btnNextStudent.Click
If txtExam1.Text > 100 Or txtExam2.Text > 100 Or txtExam1.Text < 0 Or txtExam2.Text < 0 Then
MsgBox("You entered a mark higher than 100 or lower than 0. Please try again.",, "Input Error")
Else
ReDim StudentRecords(NumOfStudents + 1)
btnFinished.Enabled = True
StudentRecords(Index).StudentName = txtStudentName.Text
StudentRecords(Index).Exam1Mark = txtExam1.Text
StudentRecords(Index).Exam2Mark = txtExam2.Text
MsgBox(StudentRecords(0).Exam2Mark)
Index += 1
NumOfStudents += 1
txtStudentName.Clear()
txtExam1.Clear()
txtExam2.Clear()
我现在在mac电脑上,所以我不能保证代码是正确的。但这就是你的问题所在。我很困惑
txtExam1.Clear()
清除该文本框控件中的输入。。。每次单击btnNextStudent
时,它都会运行。这就是你所说的“每次点击之间数据丢失…”的意思吗?
// Declare outside of button
Public StudentNameList As New List(Of String)()
Public Exam1MarkList As New List(Of String)()
Public Exam2MarkList As New List(Of String)()
// Add values when clicked
StudentNameList.Add(txtStudentName.Text)
Exam1MarkList(txtExam1.Text)
Exam2MarkList(txtExam2.Text)
// Retrieve values from your list
For Each Str As String In StudentNameList
MessageBox.Show(str)
Next