السلام عليكم
عندي نموذج مخلي قيمة الخاصية AcceptButton تساوى زرار في النموذج
المشكلة اني
عندي DataGridView لما بختار اي صف فيها واجي اضغط علي الزر Enter ينتقل للصف التالي ولا ينفذ كود الزرار اللي محدده في الخاصية
ايه الحل للمشكلة ده؟
السلام عليكم
عندي نموذج مخلي قيمة الخاصية AcceptButton تساوى زرار في النموذج
المشكلة اني
عندي DataGridView لما بختار اي صف فيها واجي اضغط علي الزر Enter ينتقل للصف التالي ولا ينفذ كود الزرار اللي محدده في الخاصية
ايه الحل للمشكلة ده؟
شكرا
في حل اخر غير خاصية accept button
وهو استخدام الخاصية KeyPreview وذلك بجعلها تساوي True
ثم قم باعلان حدث key_pressed للفورم وفي الحدث قم بفحص ال key الذي تم ضغطه من لوحة المفاتيح واذا كان هو مفتاح الEnter قم بعمل ما تريد ..
في المرفقات الكود
قولوا لا اله الا الله تفلحوا
ومن يبتغي غير الاسلام دينا فلن يقبل منه وهو في الاخرة من الخاسرين- صدق الله العظيم
متشكر اخي
ولكن يحدث خطئ منطقي وهو بعد ما يحدد المستخدم الصف المراد وعند الضغط علي زرار Enter من لوحة المفاتيح بتستجيب الـ DataGridView اولا ثم يتم تنفيذ الحدث
يعني
القيمة اللي هستخدمها في الحدث هي القيمة اللي محدده المستخدم + 1
لو حضرتك جربت وعدلة كود الحدث في اللي حضرتك بعته كالاتي
if (e.KeyChar == 13) MessageBox.Show(dataGridView1.CurrentRow.Index.ToString());
هيظهر اللي بقول عليه
قد يختر علي بال احد ان اقوم بلتغلب علي المشكله اني اطرح واحد من الصف النشط، جميل بس للاسف الكود اللي عاوز انفذه هو اصل موجود في زرار، ممكن برده يختر عي احد اني ان استدعى دالة الزار وارسل لها الـ sender يكون الـ dataGridView1 وهنا اعمل اتشك بحيث لو اطره واحد ولا لأ
بصراحة الموضوع كده هيكون خد اكتر من حجمه عشان كده ياريت لو في خاصية تعطل موضوع Enter في الـ dataGridView يكون احسن بكتير
شكراً اخي وانا سعيد بردك
شكرا
قم بوراثة ال DataGridView وقم بإلغاء الحدث pressed اذا كان قيمته Enter
هذا مثال لتوضيح المطلوب في المرفقات
قولوا لا اله الا الله تفلحوا
ومن يبتغي غير الاسلام دينا فلن يقبل منه وهو في الاخرة من الخاسرين- صدق الله العظيم
متشكر جدا
هو الكود اللي حضرتك عمله في الداله OnKeyDown هو فعلا عطل الزار Enter بس للاسف برده عطل عمل الخاصية accept button
عشان كده عملت استدعاء للداله button1_Click
كالاتي
private void dataGridView1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
e.Handled = true;
button1_Click(null, null);
}
}ده من غير ما اعمل ورثة للـDataGridView
متشكر ليك جدا وربنا يكرمك ويحرر بلدنا العزيزة فلسطين
شكرا
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…