Sem Göksu
Sem Göksu
Yazılım · Yolculuk · Fenerbahçe
AJAX

AJAX MaskedEdit ve MaskedEditValidator Extender

Merhaba arkadaşlar bu makalemde AJAX Control Toolkit nesnelerinden MaskedEdit ve MaskedEditValidator Extender nesnelerini inceleyeceğiz.

15 Şubat 2007 3 dk okuma 73 1
Merhaba arkadaşlar bu makalemde AJAX Control Toolkit nesnelerinden MaskedEdit ve MaskedEditValidator Extender nesnelerini inceleyeceğiz.

MaskedEdit:

MaskedEdit kontrolü textbox üzerinde giris denetimleri saglayan bir ajax nesnesidir. Bu nesne textboxlara uygulandıgında seçilen veri tipine baglı olarak kullanıcının girecegi deger maskelenir. Girilen verilerin dogrulanması için MaskedEditValidator nesnesini kullanırız.

Bu nesneyi nerelerde kullanabiliriz? Bana kalırsa hemen hemen her yerde. Tarih girislerinde, para birimi girislerinde, sadece yazı yada sadece numeric degerleri girmek istedigimiz her yerde bu nesneyi kullanabiliriz.

Kullanımı:

<ajaxToolkit:MaskedEditExtender
    TargetControlID="TextBox2"
   
Mask="99,999.99"
   
MessageValidatorTip="true"
   
OnFocusCssClass="MaskedEditFocus"
   
OnInvalidCssClass="MaskedEditError"
   
MaskType="Number"
   
InputDirection="RightToLeft"
   
AcceptNegative="Left"
   
DisplayMoney="Left"/>

  • Maskeleme Karakterleri
            9 - Sadece numeric deger
            L - Harf
            $ - Harf yada bosluk
            C - Custom karakter(büyük küçük harf duyarlı)
            A - Custom karakter yada harf
            N - Custom karakter yada numeric deger
            ? - herhangi bir karakter

  • Maskeleme Araçları
             /    - Tarih Ayıracı
             :    - Zaman ayıracı
             .    - Ondalok ayıracı
             ,    - Binlik ayıracı
  • DisplayMoney: Para biriminin nasıl gösterilecegini belirler. (sol, sag, none)
  • InputDirection: Veri girisinin baslangıç yönünü belirler.
  • MaskType: Maskeleme tipini belirtir.
            None - Valdiation yok
            Number - Numeric validation
            Date - Tarih validation
            Time - Zaman validation
  • MessageValidatorTip: Textboxın içerigi degistiginde görüntülenecek mesaj.

MaskedEditValidator:

Maskelenen textboxdaki verilerin dogrulugunu kontrol etmek için kullanılan kontroldür.

Kullanımı:


<ajaxToolkit:MaskedEditValidator
    ControlExtender="MaskedEditExtender2"
    ControlToValidate="TextBox2"
   
IsValidEmpty="False"
   
MaximumValue="12000"
   
EmptyValueMessage="Number is required"
   
InvalidValueMessage="Number is invalid"
   
MaximumValueMessage="Number > 12.000"
   
MinimumValueMessage="Number < -100"
   
MinimumValue="-100" ValidationGroup="Demo1"
   
Display="Dynamic"
   
TooltipMessage="Input a number: -100 up to 12.000"/>


Özellikleri:
  • ControlToValidate - Kontrol edilecek olan textbox'ın ID'si
  • ControlExtender - Maskeleme yapan Extenderin ID'si
  • ClientValidationFunction - Custom validator içim kullanolan fonksiyon
  • InitialValue - Validation'un baslangıç degeri. Varsayılanı bostur
  • IsValidEmpty - Textbox bossa requiredfield validator'ı çalısır.
  • MaximumValue - Maskeleme için max. Deger. (CompareValidator çalısır)
  • MinimumValue - Maskeleme için min. Deger. (CompareValidator çalısır)
  • MessageEmpty - RequiredValidator çalıstıgında verillecek mesaj
  • MaximumValueMessage - Max degerden büyük bir deger girildiginde verilecek mesaj. (CompareValidator çalısır)
  • MinimumValueMessage - Min degerden büyük bir deger girildiginde verilecek mesaj. (CompareValidator çalısır)
  • InvalidValueMessage - Geçersiz deger girildiginde görüntülenecek mesaj
  • TooltipMessage - textbox üzerinde gelince yada bosken görüntülenecek olan tooltip degeri.
  • ValidationExpression - Veriyi dogrulamak için kullanılan Regular expression.
Örnek:

Örnegimizde tarih alanına veri girerek istedigimiz kritere uygun olup olmadıgını kontrol edip verilerin dogrulanmasını, eger girilen veri yanlısssa kullanıcının bilgilendirilmesini saglayacagız.

Örnegimize geçelim ve yeni bir Ajax Projesi açalım. Sayfamıza script manager, textbox, MaskedEditExtender, MaskedEditValidationExtender koyalım.



Simdi maskleme ve validation için gerekli kodları yazalım. Bunun için HTML kod kısmına geçelim.

Maskeleme islemi




Validation islemi



Projemizi çalıstıralım; ve Geçersiz bir tarih girelim



Simdi belirtilen tarihten büyük bir tarih girelim;



Simdi belirtilen tarihten küçük bir tarih girelim;



Evet gerçekten çok kullanıslı 2 kontrol. Ufak tefek bugları var ama zamanla düzeleceginden hiç kuskum yok :)

Bu makalenin de sonuna geldik, baska bir makalede görüsmek üzere basarı ve iyi günler dilerim.

Sem GÖKSU
MCP | MCAD.NET | MCTS

Örnek Kodlar için mail adresimi kullanabilirsiniz

askisem@hotmail.com

Kaynaklar

http://ajax.asp.net
Paylaş:

Yorumlar (1)

S
Serkan Eren 20 Nis 2009 04:52

Sem Göksu, gerçekten güzel bi makale ellerine sağlık.Yalnız Masktype olarak number, Mask'ada "99,999" olarak yaptıgınızda, sayıyı 99.999 olarak gösteriyor, aynı şekilde bu olayın simetriğide olmakta yani "99.999" bunuda "99,999" olarak gösteriyor. Büyüktür Küçüktür olayları tarih ve zaman işlemlerinde güzel çalışşada,sayısal değerlerde farklı kombinasyonlarında doğru randumanı alamadım.

Yorum bırak

* Yorumlar moderasyon sonrası yayınlanır. E-posta gizli tutulur.