DirectCast
原始為---
Option Strict Off
For i As Integer = 1 To 10
Dim C As TextBox = Me.Controls.Find("TextBox" & i, True)(0)
If i = 10 Then
C.Text = arr(i + 4).ToString
Else
C.Text = arr(i + 1).ToString
End If
Next
End If
更改為---
Option Strict On
會發生 Error 隱含轉換錯誤1 Option Strict On 不允許從 'System.Windows.Forms.Control' 到 'System.Windows.Forms.TextBox' 的隱含轉換。
錯誤2 Option Strict On 不允許從 'System.Windows.Forms.Control' 到 'System.Windows.Forms.ComboBox' 的隱含轉換。
錯誤3 Option Strict On 不允許從 'System.Windows.Forms.Control' 到 'System.Windows.Forms.DataGridView' 的隱含轉換。
故改為---
For i As Integer = 1 To 10
Dim C As TextBox = DirectCast(Me.Controls.Find("TextBox" & i, True)(0), TextBox)
If i = 10 Then
C.Text = arr(i + 4).ToString
Else
C.Text = arr(i + 1).ToString
End If
Next
錯誤4 Option Strict On 不允許從 'Object' 到 'String' 的隱含轉換
DataGridView1.Rows(i).Cells(2).Value = _
Trim(DataGridView1.Rows(i).Cells(2).Value) + Trim(DataGridView1.Rows(i).Cells(3).Value)
故改為---
DataGridView1.Rows(i).Cells(2).Value = _
Trim(DataGridView1.Rows(i).Cells(2).Value.ToString) + Trim(DataGridView1.Rows(i).Cells(3).Value.ToString)
沒有留言:
張貼留言