اخي الكريم راجعت مشروعك واتعبني قليلا لذلك ارتأيت ان اعمل مثال جدبد بنفس الحقول
وتسميات مختلفة قليلا المهم شي واحد مختلف وهو ان ازرار الحفظ والتعديل والحذف كل لوحده
وعند الاضافة نضيف صف فارغ ونملأه
ومن ناحية الكومبوبوكس في الداتاغرايد ملأته من collection الموجود في Edit Columns للداتاغرايد
مرفق قاعدة بيانات SQL ... غير السيرفر الى الذي عندك
ارجو ان يكون طلبك قد تحقق والفضل لله
دمت بخير
اولا انا بشكرك جدا على مجهودك واسف لو كنت تسببت فى تعبك
ولكن للاسف
ال انا محتاجه خلاف هذا المثال تماما
بالنسبه لطلبي لا يوجد ااى تكست بوكس والاضافه والتعديل والحذف تتم من خلال الداتا فيو مباشرا دون الاحتياج لتكست بوكس نظرا لان شاشه االعمل الفعليه تضم عدد 6 داتا فيو لعدة جداول مختلفه بيتم اختيار بنود معينه تخص الموظف من كل دتا فيو ثم عند الضغط على حفظ يتم حفظ كل البيانات الموجوده فى كل داتا ولذلك طلبت كود حفظ وتعديل وحذف عن طريق الداتافيو مباشرا بحيث انى ااكرر هذا الكود حسب عدد الداتا فيو بعد تعديله حسب كل جدول ووضع اكواد الحفظ عي مفتاح حفظ البيانات
اتمنى تكون الفكره وضحت
ملحوظه حضرتك ارسلت لى رابط فيديو شبيه تماما بطلبي الخلاف الوحيد بين طلبي وشرح الفيديو هو صاحب الفيديو استخدم اجراء مخزن داخل السيكول سيرفر
ال انا عيزو الغاء لاجراء المخذن واضافه لاجراء المخزن داخل كود الحفظ بحيث يتم الحفظ بدون استخدم اجراء مخزن
ولك منى تحيااتى
} } private void PopulateDataGridView() { using (SqlConnection sqlCon = new SqlConnection(@"server=.; Database=Accounts; Integrated Security=true")) { SqlDataAdapter sqlAdp = new SqlDataAdapter("Select * From Employee", sqlCon); DataTable dt = new DataTable(); sqlAdp.Fill(dt); dgvEmployee.DataSource = dt; } }
private void Form1_Load(object sender, EventArgs e) { using (SqlConnection sqlCon = new SqlConnection(@"server=.; Database=Accounts; Integrated Security=true")) { SqlDataAdapter sqlAdp = new SqlDataAdapter("Select * From Employee", sqlCon); DataTable dt = new DataTable(); sqlAdp.Fill(dt); dgvEmployee.DataSource = dt; }
}
الف شكر استاذي الغالى هو دا المطلوب بنسبه 90%
محتاج تعديل بسيط عليه ويبقى 100%
كود الحفظ هيكون داخل مفتاح عند الضغط عليه يتم الحفظ
وهنا فيه مشكله وجهتنى وهي عند اختيار اكثر من بند للموظف بيتم اضافه سطر واحد فقط
وايضا اذا تم تعديل بند موجود واضافه بند جديد عند الحفظ بيتم حفظ الجديد ولا يعدل التعديل ال تم
ولذلك
ممكن تعمل حلقه فور بحيث عند الضغط على حفظ يعمل لاتى
1- اي تعديلات تمت على السجلات المضافه سابقا يتم تعديلها
2- اذا كان تم اضافه مجموعه بنود جديده يتم حفظها ايضا
اتمنى تكون الغكره وصلت
وزادك الله علما نافعا
وجعله في ميزان حسناتك اللهم امين
هل جربت الكود عند الانتقال من خلية الاسم الى خلية اخرى في سجل جديد تتم عملية حفظ سجل جديد و عند التعديل في أي خلية محفوظة والانتقال الى خلية اخرى تتم عملية التعديل تماما .
عندي سؤال ممكن تشرح هذه النقطة : عند اختيار أكثر من بند للموظف بيتم اضافه سطر واحد فقط فهذا مستحيل لان الكود مكتوب في حدث dgvEmployee_CellValueChanged
ضع مثال مع وضع علامات في أسطر الكود الذي تريد تعديله .
أما بالنسبة لوضع حلقة فور فلا داعي لها لأنه عند كتابة أي شيء في أي خلية والانتقال لخلية أخرى يتم حفظ الخلية السابقة سواء كانت في سجل جديد او سجل مراد تعديله .
سبحان الله وبحمده سبحان الله العظيم و الحمد لله ولا اله الا الله والله اكبر
(10-07-19, 03:46 AM)asemshahen5 كتب : هل جربت الكود عند الانتقال من خلية الاسم الى خلية اخرى في سجل جديد تتم عملية حفظ سجل جديد و عند التعديل في أي خلية محفوظة والانتقال الى خلية اخرى تتم عملية التعديل تماما .
عندي سؤال ممكن تشرح هذه النقطة : عند اختيار أكثر من بند للموظف بيتم اضافه سطر واحد فقط فهذا مستحيل لان الكود مكتوب في حدث dgvEmployee_CellValueChanged
ضع مثال مع وضع علامات في أسطر الكود الذي تريد تعديله .
أما بالنسبة لوضع حلقة فور فلا داعي لها لأنه عند كتابة أي شيء في أي خلية والانتقال لخلية أخرى يتم حفظ الخلية السابقة سواء كانت في سجل جديد او سجل مراد تعديله .
انا اسف لو بتقل عليك
ونا معاك فى كل كلامك لكن الفرق انى وضع الكود في مفتاح خاص بالحفظ
وليس فى حدث dgvEmployee_CellValueChanged
ولذلك يفضل استخدامحلقة فور
10-07-19, 03:22 PM (آخر تعديل لهذه المشاركة : 10-07-19, 03:23 PM {2} بواسطة amonem.)
(10-07-19, 03:46 AM)asemshahen5 كتب : هل جربت الكود عند الانتقال من خلية الاسم الى خلية اخرى في سجل جديد تتم عملية حفظ سجل جديد و عند التعديل في أي خلية محفوظة والانتقال الى خلية اخرى تتم عملية التعديل تماما .
عندي سؤال ممكن تشرح هذه النقطة : عند اختيار أكثر من بند للموظف بيتم اضافه سطر واحد فقط فهذا مستحيل لان الكود مكتوب في حدث dgvEmployee_CellValueChanged
ضع مثال مع وضع علامات في أسطر الكود الذي تريد تعديله .
أما بالنسبة لوضع حلقة فور فلا داعي لها لأنه عند كتابة أي شيء في أي خلية والانتقال لخلية أخرى يتم حفظ الخلية السابقة سواء كانت في سجل جديد او سجل مراد تعديله .
هل هناك حل وعمل حلقهفور ليتم الحفظ عن طريق مفتاح خاص للحفظ والتعديل بدلا من الحدث dgvEmployee_CellValueChanged
؟؟
ام الموضوع صعب استاذي الفاضل
واسف لو بتقل عليك