You need to enable JavaScript to run this app.

Skip to main content

C# TextBox'a Sadece Harf, Sayı, Özel Karakter Girme

C# TextBox'a Sadece Harf, Sayı, Özel Karakter Girme

Gezgin
C# TextBox'a Sadece Harf, Sayı, Özel Karakter Girme
C# programında bir TextBox kontrolüne sadece belirli türde karakterleri (harf, sayı, özel karakterler) girmeyi sağlamak için KeyPress veya TextChanged etkinliklerini kullanabilirsiniz. Aşağıda, sadece harfleri, sayıları ve özel karakterleri kabul eden bir TextBox kontrolünü sınırlayan bir örnek bulunmaktadır.

Kod:
using System;
using System.Linq;
using System.Windows.Forms;

namespace HarfSayiOzelKarakterTextBox
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
           
            // TextBox'a KeyPress etkinliği ekleniyor
            textBox1.KeyPress += TextBox1_KeyPress;
        }

        private void TextBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            // Sadece harfler, sayılar ve belirli özel karakterleri kabul etmek için kontrol
            if (!char.IsLetterOrDigit(e.KeyChar) && !IsAllowedSpecialCharacter(e.KeyChar) && !char.IsControl(e.KeyChar))
            {
                e.Handled = true; // Geçersiz karakteri engelle
            }
        }

        private bool IsAllowedSpecialCharacter(char character)
        {
            // İzin verilen özel karakterleri belirleyin
            char[] allowedSpecialCharacters = { '@', '#', '$', '%' }; // Örneğin: '@', '#', '$', '%' gibi özel karakterlere izin verilmiştir.

            // Belirli bir özel karakter izin verilenler listesinde mi kontrol et
            return allowedSpecialCharacters.Contains(character);
        }
    }
}

Bu örnekte, TextBox1_KeyPress metodunda KeyPress etkinliği kullanılarak, girilen her karakter için bir kontrol yapılır. IsLetterOrDigit metodu ile karakterin harf veya sayı olup olmadığı kontrol edilir. IsAllowedSpecialCharacter metodu ile ise özel karakterin izin verilen özel karakterler listesinde olup olmadığı kontrol edilir. Eğer karakter uygun değilse, e.Handled = true; ifadesi ile karakterin işlenmiş olduğunu ve görüntülenmeyeceğini belirtiyoruz. Bu şekilde, TextBox kontrolü sadece belirli türde karakterleri kabul eder.

İçerik sağlayıcı paylaşım sitesi olarak hizmet veren Ddo1.com WebMaster & Kodlama Forumu sitemizde 5651 sayılı kanunun 8. maddesine ve T.C.K'nın 125. maddesine göre tüm üyelerimiz yaptıkları paylaşımlardan kendileri sorumludur. Sitemiz hakkında yapılacak tüm hukuksal şikayetleri bağlantısından bize ulaşıldıktan en geç 3 (üç) gün içerisinde ilgili kanunlar ve yönetmenlikler çerçevesinde tarafımızca incelenerek, gereken işlemler yapılacak ve site yöneticilerimiz tarafından bilgi verilecektir.