3.Validation Kontrolleri(Doğrulama Kontrolleri)

 

Doğrulama Kontrolleri, kullanıcılardan veri alınması gerektiği durumlarda, alınan verilerin doğruluğunu denetlemek için kullanılır.Doğrulama kontrolleri ToolBox içerisinde bulunan Validation grubu altında bulabilirsiniz.

 

 

 

RequiredFieldValidator


Kullanıcının belirtilen alanı boş geçmesini engelleyerek mutlaka doldurmasını sağlayan doğrulama kontrolüdür. Bu kontrol, belirtilen alan boş geçildiğinde istenen hata mesajını ekrana getirerek sayfanın sunucuya gitmesini engeller.

 

RequiredFieldValidator kontrolüne ait önemli özellikler şunlardır:

Özellik Açıklama
ID Kontrol adını belirlemek için kullanılır.
ControlToValidate Kontrol edilecek olan sunucu kontrolünü belirlemek için kullanılır.
Kontrol edilecek sunucu kontrolünün ID’si burada belirtilir.
ErrorMessage Kullanıcıya gönderilecek hata mesajı bu alana girilir.

 

İstenirse hata mesajı font özellikleri ve rengi Properties panelinden Font ve ForeColor özelliğinden ayarlanabilir.

 

Örnek Uygulama: Kullanıcı adı ve şifre alanlarının boş geçilmesini engellemek için bir uygulama hazırlayalım.

 

Aşağıdaki formu tasarlayalım:

Yandaki formu tasarlayalım.

 

 

 

 

 

 

RequiredFieldValidator tarafından kontrol edilecek TextBox'ın seçimi ControlToValidate özelliğini kullanarak belirleyelim.

RequiredFieldValidatorun ekrana çıkaracağıhata mesajını ErrorMessage özelliğini kullanarak ekleyin.

 

 

Formu oluşturduktan sonra 1.RequiredFieldValidator özelliklerine girerek ControlToValidate ve ErrorMessage özelliklerini ayarladık ve ikinci kontrole geçtik.2.RequiredFieldValidator özelliklerine girerek ControlToValidate ve ErrorMessage özelliklerini ayarladık.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Uygulamayı çalıştırın ve textbox'lara bir değer girmeden giriş butonuna basın.Bu durumda ekran çıktısı aşağıdaki gibi olacaktır.

 

 

 

 

 

 

 

 

 

Hata Mesajları

 

Bu validation kullanılırken böyle bir hata alındığında RequiredFieldValidator1 validationun ControlToValidate özelliği ayarlanmadığında bu hata mesajı karşınıza gelir.

 

Bu hatayı gidermek için ilgili kontrolün hangi hangi TextBox'ı kontrol edeceğini seçiniz.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

RangeValidator


RangeValidator kontrolü, kullanıcı tarafından girilen bir değerin belirli bir aralıkta tutulmasını sağlamak için kullanılır. Bunun için RangeValidator kontrolüne maksimum ve mininum değerler girilir.

 

RangeValidator kontrolüne ait önemli özellikler şunlardır:

Özellik Açıklama
ID Kontrol adını belirlemek için kullanılır.
ControlToValidate Kontrol edilecek olan sunucu kontrolünü belirlemek için kullanılır.
Kontrol edilecek sunucu kontrolünün ID’si burada belirtilir.
ErrorMessage Kullanıcıya gönderilecek hata mesajı bu alana girilir.
MaximumValue Sınırlamada üst sınırı belirtir.
MinumumValue Sınırlamada alt sınırı belirtir.
Type Verinin tipini belirlemek için kullanılır.

 

İstenirse hata mesajı font özellikleri ve rengi Properties panelinden Font ve ForeColor özelliğinden ayarlanabilir.

 

Örnek Uygulama: Kullanıcıdan yazılı notu girmesini istiyeceğiz.Yazılı notu 0 ile 100 arasında bir değer olmalıdır.

 

Aşağıdaki formu tasarlayalım:

Yandaki formu tasarlayalım.

 

 

 

 

 

 

RangeValidator tarafından kontrol edilecek TextBox'ın seçimi ControlToValidate özelliğini kullanarak belirleyelim.

RangeValidator ekrana çıkaracağı hata mesajını ErrorMessage özelliğini kullanarak ekleyelim.

RangeValidator ile minimum girilmesi gereken değeri MinimumValue özelliği ile belirleyelim.

RangeValidator ile maksimum girilmesi gereken değeri MaximumValue özelliği ile belirleyelim.

TextBox'a girilen değerin türünü belirlemek için RangeValidator'ün Type özelliini belirleyelim.

 

 

Formu oluşturduktan sonra RangeValidation özelliklerini değiştirdik.

Yandaki properties resminde hangi özelliklerin değiştirildiği koyu renkli bölümlerden görebilirsiniz.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Uygulamayı çalıştırın ve textbox'lara 0-100 arasında olmayan değer girişi yapın ve butonuna basın.Bu durumda ekran çıktısı aşağıdaki gibi olacaktır.

 

 

 

 

 

 

 

 

 

Hata Mesajları

 

Bu hata alındığında validationun ControlToValidate özelliği ayarlanmamıştır.İlgili Validationun hangi textboxı kontrol edeceğini seçin.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Yukarıdaki hata mesajını alıyorsak Maksimum value değerini vermemiş olabiliriz.Maksimum value değerini verirsek hata düzeltilmiş olur.

 

 

 

 

 

 

 

 

 

 

Yukarıdaki hata mesajını alıyorsak minimum value değerini vermemiş olabiliriz.Minimum value değerini verirsek hata düzeltilmiş olur.

 

 

CompareValidator


CompareValidator kontrolü, kullanıcılar tarafından girilen değerlerin başka bir değerle karşılaştırmasını yapar.Özellikle şifre ve şifre tekrarı bölümlerinde kullanılmaktadır.

 

CompareValidator kontrolüne ait önemli özellikler şunlardır:

Özellik Açıklama
ID Kontrol adını belirlemek için kullanılır.
ControlToValidate Karşılaştırılacak değerin girildiği alandır.
ControlToCompare Karşılaştırma başka bir alan ile yapılacaksa diğer alanı belirtir.
ValueToCompare Eğer karşılaştırma sabit bir değerle yapılacaksa sabit değer burada girilir.
ErrorMessage Kullanıcıya gönderilecek hata mesajı bu alana girilir.

 

İstenirse hata mesajı font özellikleri ve rengi Properties panelinden Font ve ForeColor özelliğinden ayarlanabilir.

 

Örnek Uygulama: Şifre şifre tekrarı için bir uygulama hazırlayalım.

 

Aşağıdaki formu tasarlayalım:

 

 

 

 

 

 

 

 

 

 

CompareValidationun hata mesajına "şifreler uyuşmuyor" yazalım. ControlToValidate ile karşılaştırılacak TextBox seçimini yapalım. ControlToCompare özellği ile de karşılaştırmanın hangi TextBox ile yapılacağını belirleyelim.

 

 

ControlToValidate :TextBox2 olarak belirledik.

ControlToCompare :TextBox1 olarak belirledik.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Uygulamayı çalıştırın ve textbox'lara farklı şifre girişinde bulunun.Bu durumda ekran çıktısı aşağıdaki gibi olacaktır.

 

 

 

 

 

 

 

 

 

 

Hata Mesajları

 

ControlToValidate özelliği ayarlanmadığında bu hata mesajı karşınıza gelir.

 

 

 

 

 

 

 

 

RegularExpressionValidator


RegularExpressionValidator kontrolü, kullanıcı tarafından girilen değerin belirli bir söz dizimi şeklinde girilmesini sağlamak için kullanılır. Girilen değer istenilen söz dizilimine uygun değilse sayfanın sunucuya gitmesini engelleyerek hata mesajı üretir.


Geniş bir kullanım alanı vardır. Örneğin, e-mail adreslerinin, telefon numaralarının, web site adreslerinin vb. girilmesinde bu kontrol ile söz dizilimi oluşturulabilir.

 

RegularExpressionValidator kontrolüne ait önemli özellikler şunlardır:

Özellik Açıklama
ValidationExpression Girilecek söz diziliminin seçileceği alandır. Söz dizilimi için programlama yazılımı belirli söz dilimleri sunar. Ancak bu söz dilimleri oldukça dar kapsamlıdır.İstenilirse kendinizde söz dizimi oluşturabilirsiniz.
ErrorMessage Kullanıcıya gönderilecek hata mesajı bu alana girilir.

 

İstenirse hata mesajı font özellikleri ve rengi Properties panelinden Font ve ForeColor özelliğinden ayarlanabilir.

 

ValidationExpression özelliği ile nasıl kontrol yapılacağını belirliyoruz.Bu özelliği tıkladığımızda aşağıdaki resimde görülen pencere açılmaktadır.

Bu pencere yardımıyla hazır Söz dizimleri ile yazım denetimi yapabiliriz. Eğer istenilen söz dizimi yoksa Custom seçeniği ile istediğiniz gibi bir söz dizimi hazırlayabilirsiniz.

 

 

 

 

 

 

 

 

 

 

 

 

 

Örnek Uygulama: Web adresi kayıt sistemi oluşturalım.

 

Aşağıdaki formu tasarlayalım:

 

 

 

 

 

 

 

 

Tasarımı yaptıktan sonra validation' un özelliklerini açalım ve gerekli ayarlarını yapalım.

 

 

ControlToValide:TextBox1

 

ErrorMessage="'http(s)://www.siteadı.uzantı' şeklinde girin!

 

ValidationExpression:Bu seçeneğide hazır seçeneklerden internet adres olarak belirleyin.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Uygulamayı çalıştırın ve internet adresi girin.Kaydet butonuna basın.

Eğer http ile başlamazsak hata belirecek ve validation çalışacaktır.

 

 

 

 

 

 

 

 

 

 

 

 

Örnek Uygulama: W-mail adresinin doğru yazılmış mı kontrolünü yapalım.

 

Aşağıdaki formu tasarlayalım:

 

 

 

 

 

 

 

 

Tasarımı yaptıktan sonra validation' un özelliklerini açalım ve gerekli ayarlarını yapalım.

 

 

ControlToValide:TextBox1

 

ErrorMessage="E-posta adresi yazımında hata var! Kontrol ediniz."

 

ValidationExpression:Bu seçeneğide hazır seçeneklerden e-mail adres olarak belirleyin.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Uygulamayı çalıştırın ve internet adresi girin.Kaydet butonuna basın.

Eğer http ile başlamazsak hata belirecek ve validation çalışacaktır.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Hata Mesajları

 

ControlToValidate özelliği ayarlanmadığında bu hata mesajı karşınıza gelir.

 

 

 

 

 

 

 

 

 

ValidationSummary


ValidationSummary kontrolü, doğrulama kontrollerinin ürettiği hata mesajlarını bir yerde toplamak için kullanılır.

 

ValidationSummary kontrolü kullanarak hata mesajı görüntülenecekse, hata mesajı bu kontrole yazılır, diğer kontrollerin Text özelliğine hatanın nerede oluştuğunu göstermek için * vb. tek karakterlik mesaj yazılır.

 

 

Örnek Uygulama: Kullanıcı Adı ve Şifre ile giriş yapılan bir uygulama hazırlayın.Bu alanlar boş geçilemez ve şifre 6 haneli sayısal bir ifade olmalıdır şartını verelim.

 

Aşağıdaki formu tasarlayalım:

 

 

 

 

 

 

 

 

 

 

 

 

 

RequiredFieldValidator tarafından kontrol edilecek TextBox'ın seçimi ControlToValidate özelliğini kullanarak belirleyelim.

 

RequiredFieldValidato1 TextBox1'i kontrol edecek.ErrorMessage özelliğinede hata mesajımızı (Bu alan boş bırakılmaz.) yazalım.

RequiredFieldValidato1 Text özelliğine * karakterini ekleyin.

 

RequiredFieldValidato2 TextBox2'i kontrol edecek.ErrorMessage özelliğinede hata mesajımızı (Bu alan boş bırakılmaz.) yazalım.

RequiredFieldValidato1 Text özelliğine * karakterini ekleyin.

RegularExpressionValidator ile de şifrenin 6 karakterli girilip girilmediğini kontrol edeceğiz.Bunu yapabilmek için:

 

TextBox'ın seçimi ControlToValidate özelliğini kullanarak belirleyelim.RegularExpressionValidator söz dizilimini ValidationExpression özelliğine \d{6} kodunu yazın. HTML ve Sunucu kontrolleri kodları sayfasından ya da Properties panelinden bu özellik ayarlanabilir.ValidationExpression Text özelliğine * karakterini ekleyin.ErrorMessage özelliğinede hata mesajımızı (Şifre 6 haneli girilmelidir.) yazalım.

 

ValidationSummary kontrolü ile ilgili herhangi bir ayar yapmaya gerek yoktur.Otomatik olarak hata mesajlarını validationlardan alacaktır.


Uygulamayı çalıştıralım.

 

 

Uygulamada textbox'lara bir değer girmeden giriş butonuna basalım.

Yandaki resimde görüldüğü gibi RequiredFieldValidator'lerin Text özelliğine yazdığımız * karakterleri gösterildi.Hata mesajları ise Summary validator ile formun aşağısında gösterilmiş oldu.

 

 

 

 

 

 

 

 

 

 

 

Şifre olarak 4 hane bir giriş yaptığımızda RegularExpressionValidator text özelliğine yazdığımız * karakteri gözüktü. ErrorMessage özelliği de Summary Validation'da gözüktü.

 

 

 

 

 

 

 

 

 

 

 

ValidationGroup Özelliği


Bir sayfada birden fazla doğrulama kontrolü kullanıldığı zaman programın çalışmasıyla ilgili problemler yaşanabilmektedir. Programlama yazılımı, bu duruma çözüm olarak ValidationGroup özelliğini sunmaktadır. ValidationGroup özelliği ile aynı sayfa içinde farklı doğrulama kontrolleri kullanılarak bu kontrollerin diğer kontrollerden etkilenmesi engellemiştir.

 

 

Örnek Uygulama:

 

Aşağıdaki formu tasarlayalım.

 

Yandaki formu tasarlayalım ve validation'ların ayarlarını yapalım.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Uygulamayı çalıştırdığımızda üye girişi yapacak olan kişi bilgilerini girip giriş butonuna bastığında üye ol bölümündeki validation'lar formun ilerlemesine mani olmaktadır.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ekrandaki bütün nesnelerin (TextBox-Validation-Button) validationGroup seçeneklerini ayarlayalım.

 

Üye Girişinde bulunan textbox,validation ve buttonun validationgroup özelliğine uye-giris, üye ol bölümünde bulunan TextBox,Validation ve Button nesnelerin ValidationGroup özelliğinede uye-ol değerini girelim.

 

Formu tekrar çalıştırdığımızda yukarıda yaşadığımız soru ortadan kalkmış oldu.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Web hosting by Somee.com