09-10-15, 12:02 AM
أنا فاهم اللي تقصده تماماً ، وفاهم الفرق بين SelectedRows و Rows لكن اللي أقصده أن الكود اللي كتبته لي :
if r.Index لا يعود لي بإنديكس أول سجل داخل المصفوفة SelectRows، وإنما يعود بقيمة الإنديكس لذلك السجل من على مستوى الـ DataGrid نفسه .
شوف ..
مش الآن SelectedRows[0] = 1001004 وهو أول سجل داخل SelectRows ؟
أريد أن أضع بيانات هذا السجل على السجل الذي يقف عليه المستخدم في الجريد الخاص بالفاتورة .
فلو قلت أنا 0 == if r.Index فلن أحصل على هذا السجل ، لأن r.index سيأتي بقيمة الانديكس الخاص بالسجل 1001004 من على مستوى الجريد ككل وليس من داخل المصفوفة SelectRows .
تخيل معي كيف يخزن الميثود SelectedRows بداخله السجلات المختارة :
أريد الحصول على الإنديكس الذي بداخل المصفوفة SelectedRows
لأنه مهما كان الـ Index الخاص بأول سجل سيختاره المستخدم من الجريد ، عندما يتم وضعه داخل SelectedRows فإنه سيأخذ الإنديكس رقم صفر ( 0 )
وبالتالي سأقرأ البيانات من هذا السجل ذو الإنديكس 0 من SelectedRows وأضعه في السجل الحالي الذي يقف عليه المستخدم في الجريد الخاص بالفاتورة ..
أما باقي السجلات فسأضعها في نهاية الجريد ..
هل فهمت قصدي ؟ أتمنى أن الصورة اتضحت لك الآن .
