Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 数据在记录中丢失 Private Sub btnNextStudent\u Click(发送者作为对象,e作为事件参数)处理btnNextStudent。单击 如果txtExam1.Text>100或txtExam2.Text>100或txtExam1.Text_Vb.net - Fatal编程技术网

Vb.net 数据在记录中丢失 Private Sub btnNextStudent\u Click(发送者作为对象,e作为事件参数)处理btnNextStudent。单击 如果txtExam1.Text>100或txtExam2.Text>100或txtExam1.Text

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

这是我现在拥有的代码,我试图将输入到文本框“txtStudentName”、“txtExam1”和“txtExam2”中的数据保存在记录中。唯一的问题是,每次单击按钮“btnNextStudent”时,数据都会丢失。我完全不知道我做错了什么,也不知道如何修复它

谢谢

原因如下:

StudentRecords(索引)。StudentName一次又一次地被替换。您只需给它一个新值。这在字符串中是不可能的。如果要跟踪多个值,应该创建一个包含字符串的“列表”

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