2013-06-25 30 views
0

我試圖找到一種方法,只允許用戶輸入「.32」或「未使用」到我的datagridviewcell。現在我的代碼如下所示。當我運行代碼時,它所做的只是將所有內容都更改爲「未使用」。即使我輸入「.32」,它也會將其更改爲「未使用」。有沒有什麼辦法解決這一問題?我感謝任何人的幫助或建議。如何在選擇的case語句中包含數字和字符串

If (e.ColumnIndex = 6) Then ' This specifies the column number 
     Dim cellData = DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value.ToString 
     If cellData Is Nothing OrElse IsDBNull(cellData) OrElse cellData.ToString = String.Empty Then 
      MessageBox.Show("Cannot Be Empty") ' This will prevent blank datagridviewcells 
      DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = "Not Used" 
     End If 

     Select Case cellData 
      Case 0.32 
       DataGridViewSize.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = 0.32 
      Case Else 
       DataGridViewSize.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = "Not Used" 
     End Select 
    End If 
+0

的代碼檢查0.32,爲什麼你期望它,當你進入4做什麼? – Guffa

+0

感謝您的收穫! Typo – stackexchange12

回答

0

我認爲沒有必要使用選擇串

更好更改爲Dim cellData = DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value

+0

我仍然希望它顯示「未使用」,如果用戶鍵入的任何內容除了「.32」 – stackexchange12

+0

如果您的DGV是數據綁定,那麼你不能把字符串數字字段..把任何數字,如0或-1然後使用cellformatting其值爲0或-1的字段將顯示「未使用」.. – matzone

相關問題