RequiredErrorMessage_emresupcinMerhaba arkadaşlar,

Bugün biraz hızlı gidiyoruz ama malum bayağı açık bıraktık o açığı da kapatmamız lazım. Bu arada sıkılanlar için söylüyorum Asp.NET’in son dersini işliyoruz. Yani son ders dediğim komple de bitiriyorum anlamında değil. Sadece 1 hafta felan diğer konulara da yoğunlaşmak için Asp’ye ara vereceğim, daha sonra örnek ve konu anlatımları ile dönerim hiç merak etmeyin. Neyse şimdi ki son konumuza dönelim. Makalenin başlığında iki konuyu baz aldım ama aklıma Web User Control konusu da gelince onu da anlatma gereksinimi duydum 🙂

 

 

Web User Control

 

• Master Page çıkmadan önce kullanılan Web User Control Master Page’den farklı çalışır.
• Tasarım zamanında içeriği görünmez buda Master Page ile arasındaki en önemli farklılıktır.
• Sayfa uzantısı .ascx’tir ASP ile kullandığımız Include’ye benzer.
• Hazırlamış olduğumuz Web User Control içeriğini her sayfaya teker teker taşımamız gerekmektedir.
• Basit bir uygulama ile inceleyelim;

 

• Web uygulaması oluşturalım ve Add New Item bölümünden bir adet Web User Control oluşturalım.
• Web User Control sayfalarının aspx sayfaları ile arasında pek fark yoktur. Tasarım ve kodlamalar aynen burada da yapılabilir. Arasındaki tek fark Web User Control sayfaları tek başına çalıştırılamazlar.

 

 

Grafik ve Çizim İşlemleri

 

Sayfamıza image kontrolü ekleyelim.
Daha sonra image nesnesinin boyutlarını ayarlayalım.

 

1  protected void Page_Load(object sender, EventArgs e)
2   {
3      System.Drawing.Bitmap resim;
4   resim = new System.Drawing.Bitmap(Server.MapPath(Image1.ImageUrl));
5  int genislik = resim.Width;
6  int yukseklik = resim.Height;
7    Image1.Width = genislik * 1/2;
8    Image1.Height = yukseklik * 1/2;
9  }

 

1  protected void Page_Load(object sender, EventArgs e)
2   {
3     System.Drawing.Bitmap cizim_alani;
4   cizim_alani = new System.Drawing.Bitmap(200,100);
5     System.Drawing.Graphics cizim;
6   cizim=System.Drawing.Graphics.FromImage(cizim_alani);
7   cizim.Clear(System.Drawing.Color.Yellow);
8     System.Drawing.Pen kalem;
9  kalem = new System.Drawing.Pen(System.Drawing.Color.Red, 3);
10  cizim.DrawRectangle(kalem,10,10,60,60);
11    Response.ContentType = "image/jpg";
12  cizim_alani.Save(Response.OutputStream, System.Drawing.Imaging.
                                                 ImageFormat.Jpeg);
13    }

 

 

• Bu çalışmada System.Drawing’deki Graphics,Pen, Brush, Color, Font, Point, Rectangle gibi sınıflardan yararlandık.
• Çizim yapmak istediğimiz alanı pixel cinsinden belirledik.
• Çizim işlemlerini yapabilmek için Graphic nesnesinden faydalandık.
• Clear() metodu ile zemin rengini ayarladık.
• Pen nesnesinin rengini kırmızı ve kenarlığın 3 px olmasını sağladık.
• Daha sonra DrawRegtangle metodu ile çizimi yaptık.
• Daha sonra çizimimizin sunucu tarafından nasıl algılanacağını ayarladık.

 

 

1  protected void Page_Load(object sender, EventArgs e)
2    {
3       System.Drawing.Bitmap cizim_alani;
4    cizim_alani = new System.Drawing.Bitmap(200,100);
5       System.Drawing.Graphics cizim;
6    cizim=System.Drawing.Graphics.FromImage(cizim_alani);
7    cizim.Clear(System.Drawing.Color.Yellow);
8       System.Drawing.SolidBrush firca;
9  firca = new System.Drawing.SolidBrush(System.Drawing.Color.Red);
10   cizim.FillRectangle(firca,10,10,60,60);
11      Response.ContentType = "image/jpg";
12   cizim_alani.Save(Response.OutputStream, System.Drawing.Imaging.
                                                  ImageFormat.Jpeg);
13  }

 

 

1  protected void Page_Load(object sender, EventArgs e)
2    {
3       System.Drawing.Bitmap cizim_alani;
4    cizim_alani = new System.Drawing.Bitmap(200,100);
5       System.Drawing.Graphics cizim;
6    cizim=System.Drawing.Graphics.FromImage(cizim_alani);
7    cizim.Clear(System.Drawing.Color.Yellow);
8       System.Drawing.Color renk;
9    renk = System.Drawing.Color.FromArgb(25,100,75);
10      System.Drawing.SolidBrush firca;
11   firca = new System.Drawing.SolidBrush(System.Drawing.Color.Red);
12   cizim.FillRectangle(firca,10,10,60,60);
13      Response.ContentType = "image/jpg";
14  cizim_alani.Save(Response.OutputStream, System.Drawing.Imaging.
                                                 ImageFormat.Jpeg);
5      }

 

 

Validation Kontrolleri (Doğrulama İşlemleri)

 

RequiredFieldValidator


Kullanıcıların sayfadaki textBox’a mutlaka bilgi girmesini istiyorsak kullanabiliriz. Bu işlemi kod yazarak yapmak mümkündür fakat RequiredFieldValidator kontrolünü de kullanabiliriz. Resimde göründüğü gibi kontrolü textBox1in yanına ekliyoruz. Yapmamız gereken ControlToValidate özelliğini textBox1 olarak ayarlıyoruz . ErrorMessage özelliğine de istediğimiz ifadeyi yazabiliriz.

 

RequiredFieldValidator_emresupcin

InıtValue Özelliğine herhangi bir ifade yazarsak ve sunucuya gönderirsek RequiredFieldValidator nesnesindeki ErrorMessage’deki yazı sayfaya aktarılır.

ValidationSummary ve RangeValidator Kontrolü


RequiredFieldValidator’deki ErrorMessage kısmına yazılan hata ValdationSummary görüntülenir.

 

ValidationSummary-RangeValidator_emresupcin

RangeValidator nesnesinin MinimumValue ve MaximumValue özelliklerine değerlerimizi giriyoruz. Eğer tarihsel bir değer girmek istiyorsak Type Özelliğini Date olarak ayarlıyoruz.
RangeValidator nesnesinin ControlToValidate, ErrorMessage, Text özelliklerinide ayarlayıp test edelim.

 

 

CompareValidate Kontrolü

 

Textbox’a girilen değerlerin belli bir sınırda ve belli bir tipte kalması isteniyorsa bu durumda CompareValidator kullanılabilir.
Aşağıdaki örnekte doğum tarihini girilen textBox’ın yanına CompareValidator eklenmiştir. Daha sonra ControlToValidate, ErrorMessage, Text, Type(Date olarak), Operator (LessThenEqual olarak) özellikleri ayarlanmıştır. ValueToCompare özelliği ise 18 yaş sınırı alındığında 31.12.1995 olarak ayarlanmıştır.

 

CompareValidate-Kontrolü_emresupcin

 

Güvenlik Resimleri


Sayfamıza 4 textBox 1 buton ekleyelim. Güvenlik resmi yazan textBox’a girilen değer yanındaki le aynı olduğunda başka bir sayfaya yönlendirme işlemi yapılacaktır.

 

 

1  private string resim_olustur()
2   {
3  string[] sayilar = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" };
4    Random rastgele = new Random();
5      string str1 = sayilar[rastgele.Next(0, 9)];
6      string str2 = sayilar[rastgele.Next(0, 9)];
7      string str3 = sayilar[rastgele.Next(0, 9)];
8      string str4 = sayilar[rastgele.Next(0, 9)];
9      string str5 = sayilar[rastgele.Next(0, 9)];
10     string str6 = sayilar[rastgele.Next(0, 9)];
11  return str1 + str2 + str3 + str4 + str5 + str6;
12    }

 

1  protected void Page_Load(object sender, EventArgs e)
2    {
3      if (!Page.IsPostBack)
4  TextBox4.Text = resim_olustur();
5    }
6  protected void Button1_Click(object sender, EventArgs e)
7    {
8       if (TextBox3.Text == TextBox4.Text)
9   Response.Redirect("Default2.aspx");
10  }
Yazar
Yazar
Bilgisayar Programcısı, Web Tasarımcı, Üniversite Öğrencisi...
Twitter Facebook Google Linkedin Flickr YouTube

Önceki Yazı:Asp.NET Master Page ve Hata Yakalama…

Sonraki Yazı:Kaktüslerin Ortamdaki Elektriksel Alanı Emdiğini Biliyor muydunuz?

YORUMLAR
SİZ DE CEVAP YAZABİLİRSİNİZ
Bu yazı hakkında görüşünüzü belirtin.

ES Web Tasarım Web Tasarım Blog Teması Emre Supçin Bu tema ES Web Tasarım tarafından düzenlenmiştir. Hiçbir şekilde kopyalanamaz.