C # TextBox Kontrolü ve Kullanımı

Bir TextBox denetimi, bir formdaki kullanıcı girişini kabul eder. Bu makalede, Windows Formlarında bir TextBox denetiminin tasarım zamanında ve çalışma zamanında nasıl oluşturulacağını tartışacağım. Bundan sonra, TextBox denetimi için mevcut olan çeşitli özellikleri ve yöntemleri tartışmaya devam edeceğim.

Bir metin kutusu nesnesi, bir formdaki metni görüntülemek veya bir C # programı çalışırken kullanıcı girişi elde etmek için kullanılır. Bir metin kutusu nesnesinde, bir kullanıcı veri yazabilir veya panodan kontrole yapıştırabilir.

C # içinde bir TextBox oluşturma

Tasarım zamanında, Form tasarımcısı kullanarak veya çalışma zamanında koddaki TextBox sınıfını kullanarak bir TextBox denetimi (dinamik olarak da bilinir) oluşturabiliriz.

Tasarım zamanında bir TextBox denetimi oluşturmak için, basitçe bir TextBox denetimini araç kutusundan Visual Studio'da bir forma sürükleyip bırakın. Formdaki bir TextBox'i sürükleyip bıraktıktan sonra, TextBox aşağıdaki şekilde görünür. Bir TextBox Formundayken fareyi kullanarak taşıyabilir ve yeniden boyutlandırabilir ve özelliklerini ve olaylarını ayarlayabilirsiniz.

Dinamik bir TextBox oluşturma

Çalışma zamanında bir TextBox denetimi oluşturmak, yalnızca bir TextBox sınıfı örneği oluşturma, özellikleri ayarlama ve Form denetimlerine bir TextBox sınıfı ekleme işlemidir.

Dinamik bir TextBox oluşturmak için ilk adım, TextBox sınıfının bir örneğini oluşturmaktır. Aşağıdaki kod parçacığını bir TextBox denetim nesnesi oluşturur.

Bir sonraki adımda, bir TextBox denetiminin özelliklerini ayarlayabilirsiniz. Aşağıdaki kod parçası, bir TextBox öğesinin arka plan rengini, ön plan rengini, Metin, Ad ve Yazı Tipi özelliklerini ayarlar.

Bir TextBox denetimi özelliklerle hazır olduğunda, bir sonraki adım Bir TextBox denetimi forma ekleme. Bunu yapmak için form.controls.add yöntem. Aşağıdaki kod parçası, geçerli forma bir TextBox denetimi ekler.

C # TextBox Yazma Değeri ve Okuma Değeri

Bir TextBox denetiminde metni görüntülemek için, böyle bir kod yazmanız gerekir.

Bu şekilde, bir TextBox denetiminden girilen değeri bir değişkene geçirebilirsiniz.

C # TextBox Özellikleri

Bir TextBox denetimini bir Forma yerleştirdikten sonra, okuma ve yazma işlemlerini öğrendikten sonra sonraki adım, özellikleri ayarlamaktır. Metin kutusu nesnesini aşağıdaki özelliklerle biçimlendirebilir veya özelleştirebilirsiniz. C # TextBox Biçimlendirme Hizalama, boyut ayarı, renk değiştirme gibi birçok özellik vardır.

Özellikleri ayarlamanın en kolay yolu, Özellikler Penceresindendir. F4 tuşuna basarak Özellikler penceresini açabilir veya bir kontrolü sağ tıklayıp Özellikler menüsü öğesini seçebilirsiniz. Özellikler penceresi aşağıdaki şekle benzer.

Aşağıda verilen özellikleri özellikler panelinde statik olarak veya açıklamanın hemen altındaki koddan dinamik olarak (çalışırken) ayarlamak mümkündür.

Konum, Yükseklik, Genişlik ve Boyut

Location özelliği, formdaki bir TextBox'un başlangıç ​​konumunu belirten bir nokta alır. Boyut özelliği, kontrolün boyutunu belirtir. Boyut özelliği yerine Witdth ve Height özelliğini de kullanabiliriz. Aşağıdaki kod parçası, bir TextBox denetiminin Konum, Genişlik ve Yükseklik özelliklerini ayarlar.

Multiline TextBox / C # Multiline Kullanarak TextBox

Varsayılan olarak, bir TextBox denetimi girişi yalnızca bir satırda kabul eder. Birden fazla satır yapmak Çok satırlı özellik doğru değer. Varsayılan olarak, Multiline özelliği yanlış Gelir.

Bir TextBox denetimini Araç Kutusu'ndan Form'a sürükleyip bıraktığınızda, bir TextBox denetiminin yüksekliğini değiştiremezsiniz.

Ancak, bir TextBox denetimi seçip Görevler tutamacını tıklayıp MultiLine CheckBox'ı işaretlerseniz, bir TextBox'ta yükseklik yeniden boyutlandırma tutma tutamaçları olduğunu görürsünüz ve bir denetimin yüksekliğini yeniden boyutlandırabilirsiniz.

Metin Kutusu BackColor ve ForeColor / C # TextBox Arkaplan ve Metin Rengi Değişimi

BackColor ve ForeColor özellikleri, sırasıyla bir TextBox öğesinin arka planını ve ön plan rengini ayarlamak için kullanılır. Bu özellikleri Özellikler penceresinde tıklarsanız, Renk İletişim Kutusu açılır.

Alternatif olarak, arka plan ve ön plan renklerini çalışma zamanında ayarlayabilirsiniz. Aşağıdaki kod parçacığını BackColor ve ForeColor özelliklerini ayarlar.

Metin Kutusu BorderStyle

BorderStyle özelliğini kullanarak bir TextBox kenarlık stilini de ayarlayabilirsiniz. BorderStyle özelliği, üç değeri olan bir BorderStyle numarası ile temsil edilir. Bunlar Nona, FixedSingle ve Fixed3D seçenekler

isim

Name özelliği, bir TextBox denetimi için benzersiz bir adı temsil eder. Koddaki kontrole erişmek için kullanılır. Aşağıdaki kod parçası, bir TextBox denetiminin adını ve metnini ayarlar ve alır.

Text, TextAlign ve TextLength

Bir TextBox öğesinin Metin özellik bir TextBox denetiminin geçerli metnini gösterir. Metin hizalama Sol, Orta veya Sağ olabilecek metin hizalamasını gösterir. textLength özellik bir TextBox içeriğinin uzunluğunu döndürür.

Aşağıdaki kod parçası, Text ve TextAlign özelliklerini ayarlar ve bir TextBox denetiminin boyutunu alır. Aşağıdaki örnekte C # TextBox gönderi ortalaması operasyon da yapıldı.

Yazı ekle

Bir TextBox'a metin eklemenin bir yolu, sadece Text özelliğini geçerli metne ve buna benzer bir şey eklemek istediğiniz yeni metne ayarlamaktır.

TextBox aynı şeyi yapmak apendtext yöntem. AppendText yöntemi, bir TextBox öğesinin sonuna metin ekler. Aşağıdaki kod parçacığı, textBox1 içeriğine metin eklemek için AppendText yöntemini kullanır.

Kabul Et ve İadelerTab

Çok satırlı bir TextBox denetiminde yeni bir satır oluşturmak için CTRL + ENTER AcceptsReturn özelliği, yalnızca ENTER tuşuna basarak yeni satıra geçmek için TextBox denetimini ayarlamanız gerekir. Varsayılan olarak, bir TextBox denetiminin AcceptsReturn özelliği false olarak ayarlanmıştır.

Bir TextBox denetimi multiline ayarlanmışsa, AcceptsTab özelliği TextBox denetiminin SEKME tuşunu kabul etmesi için kullanılır. Bu özellik ayarlanmazsa, SEKME tuşuna basmak yalnızca bir formdaki bir sonraki denetime gider. Varsayılan olarak, bir TextBox denetiminin AcceptsTab özellik değeri false olarak ayarlanır.

wordWrap

WordWrap özelliği doğruysa, TextBox denetimindeki metin gerekirse otomatik olarak sonraki satıra ilerler. Eğer . Bu özellik true değerine ayarlanırsa, ScrollBars özellik ayarından bağımsız olarak yatay kaydırma çubukları görüntülenmez.

kaydırma çubukları

Çok Satırlı bir TextBox denetimi kaydırma çubuklarına sahip olabilir. TextBox denetiminin ScrollBars özelliği, bir denetim üzerindeki kaydırma çubuklarını göstermek için kullanılır. ScrollBars özelliği, dört değerle numaralandırılmış bir ScrollBars ile gösterilir – Hem, Dikey, Yatay ve Yok.

Aşağıdaki kod pasajı, hem dikey hem de yatay kaydırma çubuklarının bir TextBox denetiminde etkin olmasını ve bir TextBox denetiminde gerektiğinde kaydırma görünmesini sağlar.

Yazı

Yazı özellik bir TextBox denetiminin yazı tipini temsil eder. Özellikler penceresinde Yazı Tipi özelliğini tıklarsanız Yazı Tipi adını, boyutunu ve diğer yazı tipi seçeneklerini görürsünüz. Aşağıdaki kod parçası, Font özelliğini çalışma zamanında ayarlar.

PasswordChar / C # TextBox Şifre Gizleme

PasswordChar özelliği, bir parola girişi için kullanmanız gerektiğinde bir TextBox'a maskeleme uygulamak ve şimdi hangi parolanın okunabileceğini sağlamak için kullanılır. Örneğin, şifre karakterleri için yıldız işareti (*) yerleştirebilirsiniz.

Aşağıdaki kod parçacığını, bir TextBox içinde girilen herhangi bir karakter olarak bir dolar ($) sembolü ayarlar.

usesystempasswordch

UseSystemPasswordChar özelliği, varsayılan sistem şifresini tamamen kullanmak için kullanılır. UseSystemPasswordChar öğesi true olarak ayarlanmışsa, varsayılan sistem şifresi karakteri kullanılır ve PasswordChar tarafından ayarlanan herhangi bir karakter yoksayılır.

CharacterCasing

TextBox'ın CharacterCasing özelliği, -Upper, Lower ve Normal değerlerinde üç değer içeren bir TextBox içindeki metnin boyutunu ayarlar.
dynamicTextBox.CharacterCasing = CharacterCasing.Upper;

TextBox İçeriklerini Oku

Bir TextBox denetiminin içeriğini okumak için en basit yol Metin özellik. Yukarıda açıklanmış olmasına rağmen, tekrar özetlemek istedim. Kod pasajı, aşağıdakileri bir metin kutusu değerini okuyan bir dizge değişkeninde saklar.

Satır / C # TextBox Satır Satır Okuma

Çok satırlı bir TextBox içinde, TextBox içeriği birden çok satırla ayrılırsa ve bir TextBox satır içeriğini satır satır okumak istiyorsanız, Çizgiler özellik. Çizgiler Özellik, döndürülen dizinin her öğesinin bir satır olduğu bir dize dizisi döndürür.

Aşağıdaki kod pasajı, bir TextBox satırının içeriğini satır satır okur.

Maksimum uzunluk

Maksimum uzunluk Bir TextBox denetiminde karakter sayısını kısıtlayabilirsiniz. Aşağıdaki kod parçası, bir TextBox öğesinin maksimum uzunluğunu 50 karaktere ayarlar.

ReadOnly / Salt Okunur

Sadece oku Özelliğini true olarak ayarlayarak bir TextBox denetimini salt okunur (düzenlenebilir değil) yapabilirsiniz. Aşağıdaki kod pasajı, ReadOnly özelliğini true değerine ayarlar.

KısayollarEnabled / Kısayolları Etkinleştir ve Devre Dışı Bırak

Metin kutusu shortcutsenabled Bu özellik, kısayolları etkinleştirmek veya devre dışı bırakmak için kullanılır. Varsayılan olarak, kısayollar etkindir. Aşağıdaki kod parçacığını bir TextBox kısayolları devre dışı bırakır.

ShortcutsEnabled özelliği aşağıdaki kısayol tuş kombinasyonlarına uygulanır:

  • CTRL + Z
  • CTRL + E
  • CTRL + C
  • CTRL + Y
  • CTRL + X
  • CTRL + ARKA PLAN
  • CTRL + V
  • CTRL + SİL
  • CTRL +
  • ÜST KRKT + SİL
  • CTRL + L
  • ÜSTKRKT + INSERT
  • CTRL + R

SelectedText / C # TextBox'ta Seçim Yapma

SelectedText özellik, seçili metni bir TextBox denetiminde döndürür.

Bir TextBox içinde seçilen metni almak ve ayarlamak için SelectionStart ve SelectionLength özelliklerini de kullanabilirsiniz. SelectionStart özelliği, seçilen metnin başlangıç ​​dizinini ve SelectionLength özelliği, ilk karakterden sonra seçilecek karakter sayısını temsil eder. Aşağıdaki kod parçası seçimi bir TextBox içinde ayarlar.

Sil / C # TextBox Temizleme

Clear yöntemi, bir TextBox içeriğini kaldırır. Aşağıdaki kod parçacığını, bir TextBox içeriğini temizlemek için Temizle yöntemini kullanır.

Tümünü Seç ve Seçimi Kaldır

TextBox sınıfı, bir TextBox denetiminin tüm metnini seçmek ve seçimi kaldırmak için SelectAll ve DeselectAll yöntemlerini sağlar. Aşağıdaki kod parçası, SelectAll ve DeselectAll yöntemlerinin nasıl kullanılacağını gösterir. TextBox nesnesinin seçim için metin içermesi gerekir.

Seçili olan metnin seçimini kaldırır.

Metin Kutusunda Kes, Kopyala, Yapıştır, İşlemleri Geri Al / C # Kopyala TextBox'a Yapıştır

TextBox sınıfı, pano işlemlerini kesmek, kopyalamak, yapıştırmak ve geri almak için Kes, Kopyala, Yapıştır ve Geri Al yöntemleri sağlar. Aşağıdaki kod pasajı Kes, Kopyala, Yapıştır ve Geri Al yöntemlerinin nasıl kullanılacağını gösterir.

C # TextBox Olayları

TextBox nesneleri çoğu klavye, fare, pencere ve form olaylarını destekler. Tüm olaylara aşağıdaki şekilde ulaşabilirsiniz. Makalenin devamında, sıkça kullanılan olaylardan örnekler verilecektir.

C # Keydown Kullanımı / C # TextBox Karakter Kontrolü

KeyDown olayını kullanarak, kullanıcı tarafından hangi tuşa basıldığını yakalayabilirsiniz.

Aşağıdaki örnekte, kullanıcının basıp basmadığını metin kutusuna girip girmediğini öğrenebilirsiniz.

Veya kullanıcının hangi tuşa bastığını bilmek istiyorsanız. e.keyco içinde veya ekeykey İle basılan tuşu öğrenebilirsiniz.

C # KeyPress Kullanımı

Bu olay, tuşa basıldığında ve sonra bırakıldığında karakter tuşları için ayarlanır. Bu olay, karaktersiz anahtarlar için de üretilen KeyDown ve KeyUp öğelerinin aksine, karakter olmayan anahtarlarla gerçekleşmez.

C # ile TextChanged kullanma

TextChanged olayı, kullanıcı girişi veya Text özelliğini yeni bir değere ayarladığında çalışır.

Aşağıdaki örnekte, textBox1 nesnesindeki her harfe basılması, label1 nesnesindeki textBox1 değerini görüntüler.

C # TextBox odağını kullanma

Aşağıdaki kod örneği, odağın kullanımını göstermektedir. Örnekte, bir olay işleyicisi GotFocus olayının oluşumunu bildirir. Bu rapor, etkinliğin ne zaman gerçekleştiğini öğrenmenize yardımcı olur ve hata ayıklama konusunda size yardımcı olabilir.

Örnek kodu çalıştırmak için, Düğme veya ComboBox gibi Denetimden miras alan bir tür örneği içeren bir projeye uygulayabilirsiniz. Burada onu textbox nesnesine uyguladım.