2013-09-24 91 views
1

有一個名爲cboEndUser的組合框。當我選擇組合框中的項目時,這個函數被調用。 cboEndUser由錯誤從'InternalField'類型到'String'類型的轉換無效

填充
cboEndUser.Items.Add(New itemData(oRec.Fields("FullName").Value, oRec("ContactID"))) 

項目數據是一個類。

Public Class itemData 
Public _item As String 
Public _itemData As Object 

Public Sub New(ByVal item As String, ByVal data As Object) 
    _item = item 
    _itemData = data 
End Sub 

Public Overrides Function ToString() As String 
    Return _item 
End Function 
End Class 


Private Sub cboEndUser_SelectedIndexChanged(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cboEndUser.SelectedIndexChanged 

      If cboEndUser.SelectedIndex <> -1 Then 
       PopulateSerialNumberArray(CInt(txtCustomerID.Text), (cboEndUser.SelectedItem)._itemData) 
      End If 

End Sub 

獲取在線路PopulateSerialNumberArray誤差(CINT(txtCustomerID.Text),(cboEndUser.SelectedItem)._的ItemData)。 errow是從'InternalField'類型到'String'類型的轉換無效。

Public Sub PopulateSerialNumberArray(ByRef plCustomerID As Integer, ByRef plContactID As String) 

End Sub 

回答

0

您的函數需要一個字符串作爲第二個參數。 (cboEndUser.SelectedItem)._itemData不是。

請更改函數的簽名或將參數更改爲字符串。

+0

是的。我改變了第二個參數(cboEndUser.SelectedItem)._ itemData.ToString。謝謝 – user2194838

相關問題