Metin Kutusuna Harf Girilmesini Engelleme


Twitter'da Paylaş Favorilerime Ekle

Metin Kutusuna Sadece Sayı Girilmesini Sağlama

Yazdığımız bazı programlarda, sayısal işlem yapılmak üzere kullanıcının metin kutusuna sayı girmesini istemekteyiz. Kullanıcının kutuyu boş bırakıp bırakmadığını if yapısı ile kolayca anlayabiliriz. 

Ancak kullanıcı kutuya sayı yerine harf ya da başka karakterler girerse, bu da hataya sebep olacaktır. Bunun önüne geçmek için çeşitli önlemler alabiliriz.

Aşağıdaki örnekte, textBox1 nesnesinin KeyPress (tuşa basılma) olayı için yazılan kodlar sayesinde, sayısal tuşlar haricindeki tuşlar etkisizleştirilmiştir.

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
     e.Handled = !char.IsDigit(e.KeyChar) && !char.IsControl(e.KeyChar);
}

* Birden fazla metin kutusu için aynı kontrol yapılacaksa, her biri için aynı programı tekrar yazmamıza gerek yoktur. Oluşturulan programın ismini, tüm metin kutularının KeyPress olayı karşısına yazabiliriz.

** Bu yöntem kopyala yapıştır olayına çözüm değildir. Kullanıcı kopyaladığı metni metin kutusuya yapıştırarak yine hataya sebep verebilir.

Metin kutusu içerisinde kopyala-kes-yapıştır gibi kısayol tuşlarının engellenmesi gayet basittir. İlgili metin kutusunun ShortcutsEnabled özelliğini false yapmanız yeterlidir.

C# metin kutusuna harf girilmesini engelleme, metin kutusuya sadece sayı girilmesi, metin kutusu kopyala yapıştır engelleme, ShortcutsEnabled özelliği

KONU İLE İLGİLİ ÖRNEKLER