منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[C#.NET] منع كتابة الحروف في DataGridView - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة السي شارب C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=175)
+--- قسم : قسم اسئلة C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=176)
+--- الموضوع : [C#.NET] منع كتابة الحروف في DataGridView (/showthread.php?tid=37422)



منع كتابة الحروف في DataGridView - MustafaShaker - 09-01-21

لو سمحت محتاج مساعدة فى كود يمنع المستخدم من كتابة الحروف في خلية الداتا جريد فيو و السماح بالارقام فقط..
?️


RE: منع كتابة الحروف في DataGridView - ابراهيم ايبو - 09-01-21

السلام عليكم ورحمة الله وبركاته
اخي الكريم 
استخدم هذا الكود في الجدث EditingControlShowing للداتاغرايد فيو  حيث ننشء حدث للعمود الاول ذو الاندكس صفر على النحو التالي
كود :
 private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
       {
           e.Control.KeyPress -= new KeyPressEventHandler(Column1_KeyPress);
           if (dataGridView1.CurrentCell.ColumnIndex == 0) //Desired Column
           {
               TextBox tb = e.Control as TextBox;
               if (tb != null)
               {
                   tb.KeyPress += new KeyPressEventHandler(Column1_KeyPress);
               }
           }
       }
ثم ضع هذا الكود حيث سيتحقق من ان الكدخلات ليست احرف او كونترولات

كود :
 private void Column1_KeyPress(object sender, KeyPressEventArgs e)
       {
           if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
           {
               e.Handled = true;
           }
       }
 وبهذا سيتم ادخال الارقام فقط في العمود الاول يمكنك فعل ذلك على اي عمود