منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
كيف احدث بيانات سطر DataGridView - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم قواعد البيانات (http://vb4arb.com/vb/forumdisplay.php?fid=40)
+--- قسم : قسم أسئلة قواعد البيانات تحت بيئة الـ.NET (http://vb4arb.com/vb/forumdisplay.php?fid=41)
+--- الموضوع : كيف احدث بيانات سطر DataGridView (/showthread.php?tid=11465)



كيف احدث بيانات سطر DataGridView - rafaag777 - 18-02-15

لدي قاعدة بيانات ds أحد جداولها مربوط بـ DataGridView وعند إجراء أي تغيير لأحد سطورها , ثم الانتقال لسطر آخر لا يعطي الوسيط ds.HasChanges قيمة True أول مرة ولكن يعطيني هذه القيمة عند الانتقال لسطر آخر مرة ثانية
السؤال كيف لي ان احدث البيانات ليعطيني الوسيط ds.HasChanges القيمة True عند الانتقال لسطر جديد من أول مرة


RE: كيف احدث بيانات سطر DataGridView - rafaag777 - 18-02-15

ياشباب المنتدى, ساعدوني في حل هذه المشكلة, مضــــــــــــــطــــــــــر


RE: كيف احدث بيانات سطر DataGridView - rafaag777 - 19-02-15

لم تنفع !!!!!


RE: كيف احدث بيانات سطر DataGridView - سعود - 19-02-15

اخي الكريم اذا كان قصدك التحديث الفوري ممكن تستخدم حدث currentcellchanged


RE: كيف احدث بيانات سطر DataGridView - Abu Ehab - 20-02-15

للعلم : الجريدفيو  متعوب علية كثير من الميكروسوفت
وتم تخصيص مجموعه كبيرة من الاحداث لها

وأنا  أيضـــــــا : خصصت كلاس لهـــــــــا  في النت فريم وورك الخاص بي 

مشكلتك في مكان الكود  
لازم تختار أحد الاحداث المخصصة للخلية أو السطر


RE: كيف احدث بيانات سطر DataGridView - rafaag777 - 20-02-15

لمزيد من التوضيح:
  عملت اتصال لقاعدة البيانات وربط داتا غرايد فيو بأحد جداولها بالشكل التالي:
كود :
ConnString = "Provider=MicroSoft.jet.oledb.4.0;Data Source=" & Application.StartupPath & "\Data.mdb"
con = New OleDbConnection(ConnString)
       DS = New DataSet
       con.Open()
       SQL = "SELECT * FROM Families"
       DaFamilies = New OleDbDataAdapter(SQL, con)
       DaFamilies.Fill(DS, "Families")
       con.Close()

       DGVFamilies.AutoGenerateColumns = False
       DGVFamilies.DataSource = DS.Tables("Families")

       DGVFamilies.Columns(2).DataPropertyName = "Name"
       DGVFamilies.Columns(3).DataPropertyName = "personsID"
       DGVFamilies.Columns(4).DataPropertyName = "State"
       DGVFamilies.Columns(5).DataPropertyName = "ColumnNum"
       DGVFamilies.Columns(6).DataPropertyName = "FamilyBookNum"

المشكلة أنه طالما أنا ضمن سطر من أسطر الداتا غرايد تبقى DS.GetChanges = Nothing ولا تأخد التغيرات إلا عندما انتقل لسطر جديد
اي عند الحدث  RowLeave تبقى  DS.HasChanges = False
ولا تصبح True إلا غند الحدث RowEnter
لا توجد طريقة لجعل DS.GetChanges = Not Nothing عند تغيير خلية من خلايا السطر او عند الحدث RowLeave
أرجو أن تكون وصلت الفكر
ملاحظة : أكثر مايهمني هو الحدثين:  RowValidating , RowValidated
عند الحدث RowValidating تكون DS.GetChanges = Nothing
عند الحدث RowValidated تكون DS.GetChanges = Not Nothing
وانا اريد أن تكون DS.GetChanges = Not Nothing عند الحدث RowValidating

انا عملت حل مؤقت لهذه المشكلة بجعل الخلية الحالية بسطر أخر وإرجاعها برمجيا
DGVFamilies.CurrentCell = "Cell at another Row"
DGVFamilies.CurrentCell = "Cell at original Row "
ولكن أكيد يوجد حل آخر


RE: كيف احدث بيانات سطر DataGridView - rafaag777 - 21-02-15

شكرا ameerah
حلت المشكلة