السلام عليكــم ورحمـة الله وبركاتــه ،،
اريد كود لمنع تكرار رقم البطاقة ولكن من خلال datagrid كيف امنع تكرار الرقم
واظهر رساله للمستخدم ان هذا الرقم مسجل من قبل
السلام عليكــم ورحمـة الله وبركاتــه ،،
اريد كود لمنع تكرار رقم البطاقة ولكن من خلال datagrid كيف امنع تكرار الرقم
واظهر رساله للمستخدم ان هذا الرقم مسجل من قبل
و عليكم السلام و رحمة الله تعالى و بركاته...
تقوم باستعراض جميع اسطر الداتاجريدفيو و تقوم بمقارنة المعلومة بمحتوى الخلية عند الرقم المحدد للمعلومة على الداتاجريد.
تحياتي...
السلام عليكــم ورحمـة الله وبركاتــه ،،
معلش ممكن بالكود لانى عملت الكود التالى
Private Sub DataGridView1_CellEndEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellEndEdit
Try
If cn.State = ConnectionState.Open Then cn.Close()
cn.Open()
cmd.Parameters.Clear()
cmd.CommandType = CommandType.Text
cmd.CommandText = "select id from dept where id=@id"
cmd.Parameters.Add("@id", SqlDbType.Int).Value = DataGridView1.CurrentRow.Cells(0).Value
dr = cmd.ExecuteScalar
If dr.Read Then
MessageBox.Show("هذا الرقم مكرر")
Else
Exit Sub
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Tryالكود شغال بس بيشتغل فى حالة الحفظ والتعديل هو المفروض يرفض التعديل فعلا لو الرقم مكرر بس انا ممكن معدلش الرقم وادخله زى ما هو ولا هو فى فكرة تانية فى التعديل ؟؟؟؟؟؟؟؟
السلام عليكم يا أخى
إنت ممكن تكتب كود فى حدث بداية التحرير
begineEdit
وتحط قيمة الخلية فى متغير
وده طبعا هيكون قبل ما قيمة الخلية تتغير
أول حاجة حد متغير عام للفورم
Public Class Form1 Dim txt As String
وبعدين هيكود ده الكود اللى هتاخد بيه قيمة الخلية قبل التعديل وتحطها فى المتغير اللى عملناه
Private Sub DataGridView1_CellBeginEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellCancelEventArgs) Handles DataGridView1.CellBeginEdit TXT = DataGridView1.CurrentCell.Value End Sub
وبعدين تضيف تعديل بسيط فى الكود بتاعك علشان لوالمستخدم أدخل قيمة مكررة يخلى قيمة الخلية بتساوى القيمة قبل التعديل
ويكون كودك بالطريقة ديه
Private Sub DataGridView1_CellEndEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellEndEdit
Try
If cn.State = ConnectionState.Open Then cn.Close()
cn.Open()
cmd.Parameters.Clear()
cmd.CommandType = CommandType.Text
cmd.CommandText = "select id from dept where id=@id"
cmd.Parameters.Add("@id", SqlDbType.Int).Value = DataGridView1.CurrentRow.Cells(0).Value
dr = cmd.ExecuteScalar
If dr.Read Then
MessageBox.Show("هذا الرقم مكرر")
DataGridView1.CurrentCell.Value = TXT
Else
Exit Sub
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Tryوإن شاء الله كده هيشتغل زى ما فى دماغك
عندما تضيق بك الدنيا فلا تقل يارب عندى هم كبير ولكن قل يا هم عندى رب كبيييير
اللهم إنى أتيت بابك مستغفراً فإن غفرت لى وأدخلتنى فأنت أهلٌ لذلك
وإن لم تغفر لى وطردتنى فأنا أهلٌ لذلك