0

どのデータが選択されているかを確認しようとしていますDataGridViewComboBoxCell

Dim status As Double
    For x As Integer = 0 To ATCGRID.Rows.Count - 1
        If ATCGRID.Rows(x).Cells(2).Value = "Full" Then
            status = 1
        ElseIf ATCGRID.Rows(x).Cells(2).Value = "Empty" Then
            status = 0
        ElseIf ATCGRID.Rows(x).Cells(2).Value = "Half" Then
            status = 0.5
        End If
        MessageBox.Show(status)
    Next x

しかし、その取得エラー

Conversion from string "Full" to type "Double" is not valid.

どうすればこれを解決できますか?

4

2 に答える 2

0

セル内のValueは数値であるため、そのように比較することはできません。これを試して:

If ATCGRID.Rows(x).Cells(2).Value.ToString() = "FULL" Then
于 2013-01-22T08:24:21.350 に答える
0

タイプデータベースを解析してみてください。

    Dim strSQL As String = "INSERT INTO ATTENDANCE(EMP_ID,EMP_NAME,AT_DATE,AT_STATUS,AT_REMARK)VALUES(@EMP_ID,@EMP_NAME,@AT_DATE,@AT_STATUS,@AT_REMARK)"
        query = New SqlCommand(strSQL, Conn)
        query.Parameters.Add("@EMP_ID",SqlDbType.Decimal)
        query.Parameters.Add("@EMP_ID").Value=id
        query.Parameters.Add("@EMP_NAME",SqlDbType.Varchar,100)' Parse your length 
        query.Parameters.Add("@EMP_NAME").Value=name
        query.Parameters.Add("@AT_DATE",SqlDbType.Date)
        query.Parameters.Add("@AT_DATE").Value=atdate
        query.Parameters.Add("@AT_STATUS",SqlDbType.Decimal)
        query.Parameters.Add("@AT_STATUS").Value=status
        query.Parameters.Add("@AT_REMARK",SqlDbType.Varchar,50)
        query.Parameters.Add("@AT_REMARK").Value=name
于 2013-01-23T01:07:28.610 に答える