Required field validation In datagrid view Columns

i am working on windows application, using VB.Net. How can i Implement required field validation in dataGrdiview columns. The user should not be able to submit the form until he selected index is changed from the combobox or Something is enterd in the textbox...
yuvaratnaAsked:
Who is Participating?
 
Jorge PaulinoIT Pro/DeveloperCommented:
ok, then you have to loop on each item in the datagridview

Like:

    Function ValidColumn() As Boolean
        For Each row As DataGridViewRow In Me.DataGridView1.Rows
 
            If Not row.IsNewRow Then
 
                Dim dt As DateTime
                If row.Cells(3).Value IsNot DBNull.Value AndAlso Not Date.TryParse(row.Cells(3).Value, dt) Then
                    Return False
                End If
 
            End If
        Next
 
        Return True
    End Function
 
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If Not ValidColumn() Then
            Stop ' Not valid
        End If
    End Sub

Open in new window

0
 
Jorge PaulinoIT Pro/DeveloperCommented:
The CellValidating event with the e.Cancel = True forces the user to enter something
0
 
yuvaratnaAuthor Commented:
How can i show a message box if the user hasnt entered anything....should i check the value to string.empty and then display the user a message that the textbox cant be empty????
0
 
yuvaratnaAuthor Commented:
Thanks a lot ipaulino..give me a minute...I will check if it works....
0
 
minjiberCommented:
Assuming your validating the 3rd column of the datagridview, use the below code which uses the RowValidating event

Private Sub DataGridView1_RowValidating(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellCancelEventArgs) Handles DataGridView1.RowValidating
        If Not DataGridView1.Rows(e.RowIndex).IsNewRow Then
            Dim c As DataGridViewCell = DataGridView1.Rows(e.RowIndex).Cells(2)
            If IsDBNull(c.Value) Or c.Value = "" Then
                c.ErrorText = "Cell cannot be empty" ' or msgbox("Cell cannot be empty") as u prefer
                e.Cancel = True
            Else
                c.ErrorText = ""
                e.Cancel = False
            End If
        End If
    End Sub

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.