C# textbox sayı girişimini engelleme

Textbox nasıl harf girişimini engellemeyi göstereceğim, böylelikle password yaparken sadece sayı kullanınız gibi yapabilirsiniz.
1- öncelikle sadece sayı girilmesini istediğiniz textbox üzerine tıklıyoruz. Sağ altta özellikler bölümünden olayları seçiyoruz.

1620343451471.png


2 - sonra seçtiğimiz kısımdan Keypress'ı bulup boş yere 2 kere tıklıyoruz. Karşımıza böyle yer gelecektir.

1620343468970.png


Buraya şu kodu giriyoruz;

C#:
 e.Handled = !char.IsLetter(e.KeyChar) && !char.IsControl(e.KeyChar)

&& !char.IsSeparator(e.KeyChar);

 
Son düzenleyen: Moderatör:
Güzel bir yazı olmuş, birkaç ekleme yapmak istiyorum.

Öncelikle incelediğim kadarıyla, bu yöntem sadece TextBox içine manuel bir şekilde yazı girilirse işe yarıyor. Yani farklı bir yerlerden kopyala-yapıştır yapılırsa çalışmayacaktır. (Bunun için ShortcutsEnabled ayarı kapatılabilir.)

Bunu önlemek için TextChanged eventine bir Regex kontrolü yapılabilir veya her harf teker teker kontrol edilebilir.

Ben olsam işlem yapılacağı sırada kontrol ederdim, yazı yazıldığı anda değil.
 
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Yeni konular

Geri
Yukarı