ユーザーがdatagrdviewにデータを入力すると、ユーザーは、datagridviewに既に存在するデータを入力できません。ユーザーが(同じ列の)datagridviewに同じデータを入力しようとすると、メッセージボックスがポップアップ表示され、「datagridviewに同じデータを入力できません」というメッセージが表示されます。
ご協力ありがとうございました。
回答:
回答№1は0入力がデータベースに存在するかどうかを確認する必要があります。たとえば、次のMySQLステートメントを実行して、入力がデータベースであるかどうかを確認します。
Dim userInput As String
userInput = TextBox1.Text "an example of user input from a textbox
Dim MySQLStatement As String = "SELECT * FROM `your_table` WHERE your_column = "" & userInput & "";"
なしで上記の例を続けることはできませんデータベースへの接続方法は知っていますが、不要な場合があります。どのように接続しても、MySQLステートメントを実行した後にレコードカウントを確認できます。 1以上の場合、データが既にデータベースにあることがわかっているので、データベースへのユーザー入力を停止できます。
回答№2の場合は0
最後に、私は解決策を得た!これは私が問題を解決するために使用したコードです。私のdatagridview名はDataGridView3です。コードは次のとおりです。
Private Sub DataGridView3_CellEndEdit(sender As Object、e As DataGridViewCellEventArgs)Handles DataGridView3.CellEndEdit
For Each Row As DataGridViewRow In DataGridView3.Rows
Try
If DataGridView3.Rows(e.RowIndex).Cells(0).Value.ToString <> Row.Cells(0).Value.ToString AndAlso DataGridView3.Rows(e.RowIndex).Cells(0).Value.ToString = DataGridView3.Rows(e.RowIndex).Cells(0).Value.ToString Then
ElseIf DataGridView3.Rows(e.RowIndex).Cells(0).Value.ToString = Row.Cells(0).Value.ToString Then
If Row.Cells(0) Is DataGridView3.Rows(e.RowIndex).Cells(0) Then
Else
MsgBox("Can"t Duplicate Condition Data!")
DataGridView3.Rows(e.RowIndex).Cells(0).Value = ""
Exit For
End If
End If
Catch
End Try
Next
End Sub