0
我有這樣的問題:無效的嘗試調用讀前訪問一個字段()」
‘無效的嘗試調用讀前訪問一個字段()’
的TextBox1中以textbox3是。已經運行,但它停留在textbox4我搜索了這個錯誤的答案,但仍不能修復我的代碼樓下誰能幫
Private Sub DataGridView1_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DataGridView1.DoubleClick
With DataGridView1
If .SelectedRows.Count > 0 Then
For i As Integer = .SelectedRows.Count - 1 To 0 Step -1
con = New MySqlConnection
con.ConnectionString = ServerLocalhost
con.Open()
ssql = "select * from bookinformation where BookNumber=" & "'" & DataGridView1.Rows(.SelectedRows(i).Index).Cells(0).Value() & "'"
dcmd = New MySqlCommand(ssql, con)
dreader = dcmd.ExecuteReader
If dreader.Read Then
TextBox1.Text = dreader.Item("BookNumber")
TextBox2.Text = dreader.Item("BooksTitle")
TextBox3.Text = dreader.Item("Quantity")
TextBox4.Text = dreader.Item("PublicPrice")
TextBox5.Text = dreader.Item("OfficeRemit")
TextBox10.Text = dreader.Item("StudentRemit")
If inchanged = False Then
inchanged = True
TextBox7.Text = dreader.Item("SaleFund")
TextBox6.Text = dreader.Item("Saving")
TextBox8.Text = dreader.Item("SalesPerBook")
Label15.Text = dreader.Item("TypeofBook")
inchanged = False
End If
If Label15.Text = ("Hard Bound") Then
CheckBox3.CheckState = CheckState.Unchecked
CheckBox2.CheckState = CheckState.Unchecked
CheckBox1.CheckState = CheckState.Checked
ElseIf Label15.Text = ("Paper Bound") Then
CheckBox3.CheckState = CheckState.Unchecked
CheckBox2.CheckState = CheckState.Checked
CheckBox1.CheckState = CheckState.Unchecked
ElseIf Label15.Text = ("Complete Set") Then
CheckBox3.CheckState = CheckState.Checked
CheckBox2.CheckState = CheckState.Unchecked
CheckBox1.CheckState = CheckState.Unchecked
Else
CheckBox3.CheckState = CheckState.Unchecked
CheckBox2.CheckState = CheckState.Unchecked
CheckBox1.CheckState = CheckState.Unchecked
MsgBox("No Type Detected!")
End If
TextBox1.Enabled = False
TextBox2.Enabled = False
TextBox3.Enabled = False
TextBox4.Enabled = False
TextBox5.Enabled = False
TextBox10.Enabled = False
TextBox7.Enabled = False
TextBox6.Enabled = False
TextBox8.Enabled = False
CheckBox1.Enabled = False
CheckBox2.Enabled = False
CheckBox3.Enabled = False
ElseIf id = 0 Then
MsgBox("No Record Found!", MsgBoxStyle.Information)
End If
'.Rows.RemoveAt(.SelectedRows(i).Index)
Next
Else
' MsgBox("Please select to Add")
End If
End With
如果1-3的工作,那麼你可能有在PublicPrice字段中的數據問題,它不能將其轉換爲字符串。如果您還沒有這樣做,請在management studio中運行查詢並檢查數據。您可以嘗試TextBox4.Text = dreader.Item(「PublicPrice」)。Tostring()幫助您查找錯誤的來源。 –