c# Desktop

c# Form Sayfasında Textbox Kutusuna Sadece Sayı Girme İşlemi

Form sayfalarında Textbox kutusu değişik amaçlarla kullanıcıdan bilgi almak için kullanılır. Girilen bilgiler herhangi bir kontrol yapılmamışsa alfasayısaldır. Programcı kendi isteğine göre bu değeri dönüştürebilir. Bu uygulamamızda form sayfasında yer alan Textbox kutusuna sadece sayı girilmesini sağlayacağız. Tamsayı girilmesini istediğim için 0 ile 9 arasında sayı girilmesini sağlayalım.

Bu işlemi geröekleştirmenin birden fazla yolu vardır. Şimdi bunları görelim.

1. Keypress olayına aşağıdaki kodları yazalım.

        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            int tus = e.KeyChar;
 
            if (tus < 48 || tus > 57)
            {
                e.Handled = true;
            }
        }

2. TextChanged olayına aşağıdaki kodları yazalım.

        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            if (Regex.IsMatch(textBox1.Text, "[^0-9]"))
            {
                textBox1.Text = textBox1.Text.Remove(textBox1.Text.Length - 1);
                textBox1.SelectionStart = textBox1.Text.Length;
                textBox1.SelectionLength = 0;
            }
        }

3. Validating olayına aşağıdaki kodları yazınız.

        private void textBox1_Validating(object sender, CancelEventArgs e)
        {
            int cikti = 0;
            bool isNumber = false;
 
            isNumber = int.TryParse(textBox1.Text, out cikti);
 
            if (!isNumber)
            {
                e.Cancel = true;
                textBox1.Text = "";
            }
 
        }

4. Keydown ve Keypress olaylarına aşağıdaki kodları yazalım.

        private bool dogrumu = false;
 
        private void textBox1_KeyDown(object sender, KeyEventArgs e)
        {
            dogrumu = false;
 
            if (e.KeyCode < Keys.D0 || e.KeyCode > Keys.D9)
            {
                if (e.KeyCode < Keys.NumPad0 || e.KeyCode > Keys.NumPad9)
                {
                    if (e.KeyCode != Keys.Back)
                    {
                        dogrumu = true;
                    }
                }
            }
            if (Control.ModifierKeys == Keys.Shift)
            {
                dogrumu = true;
            }
        }
 
        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (dogrumu == true)
            {
                e.Handled = true;
            }
 
        }
 

İlgili Makaleler
Kompleks Veri Bağlama (Complex Data Binding)
Nesne Tabanlı Programlama Çalışma Soruları
Veri Girişi Doğrulama (Input Validation)
Basit Veri Bağlama (Simple Data Binding)
Konsol Ekranında Kod Yazma ve Çalıştırma
Veri Girişi Maskeleme (MaskedTextBox)
Konteyner Kontrolleri
Form Sınıfı
Değişken Tanımlama Kuralları
c# Console Uygulamalarında ReadKey Metoduyla Klavye Tuşlarını Kontrol Etme
Sayısal Loto Çekilişini Yapan c# Uygulaması
Form Sayfalarında Ayrıntılı ListBox Kullanımı
WebBrowser ve Panel Kontrollerini Kullanarak Web Tarayıcı Oluşturan c# Form Uygulaması
Yazdırma İletişim Kutusu (PrintDialog)
TabControl Panelini Kullanarak Lokantalar İçin Müşteri Siparişi Alan c# Form Uygulaması
Yıkıcı Metotlar (Destructors)
Pisagor Bağıntısı İşlemlerini Gerçekleştiren c# Uygulaması
Panel Üzerinde Serbest Çizim Yapan c# Form Uygulaması
GroupBox Paneliyle Gruplandırılan Bilgisayar Parçalarının Satışını Yapan c# Form Uygulaması
c# Console Uygulamalarında Ping Nasıl Kullanılır, Ping Atma

Yorum Ekle
   
Kötü
İyi