ユーザーがセルを空白のままにしたり、負の数を入力したりできないようにしたい datagridview 列があります。if then ステートメントの順序を変更して最初に空白の検証チェックを行うと、コードは機能しますが、否定的な検証では機能しないことがわかりました。では、コードが最初の if ステートメントに対してのみ機能し、2 番目のステートメントを無視するのはなぜでしょうか? 誰かがこれについて与えることができる助けや提案を大いに感謝します. :)
If (e.ColumnIndex = 0) Then 'checking value for column 1 only
Dim cellData As Integer
If (Int32.TryParse(DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value, cellData)) Then
If cellData < 0 Then
MessageBox.Show("Negative Numbers Not Allowed") 'This prevents negative numbers
DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = "Name"
Exit Sub ' Again this a default value I want supplied back to the datagridivewcell
End If
Else
Dim testData As String = DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value
If (String.IsNullOrEmpty(testData)) Then
MessageBox.Show("Cannot Be Empty")
DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = "Name" ' This is a default value that I want to supply after the message box
End If
End If
End If