.net teknolojisi, asp.net ile geliştirilen web uygulamalarında kullanılmak üzere bizlere altmışın üzerinde bir çok hazır kontrol sunar. Bu kontrolleri kullanarak web sayfalarında bir çok önemli işlevleri kolaylıkla gerçekleştirebiliriz. Bu kontrolleri kullanmak için sadece sayfamıza sürükleyip bırakmamız yeterlidir. Asp.net de kullanabileceğimiz kontroller Sunucu Kontrolleri, ve HTML (Istemci) Kontrolleri olmak üzere iki ana gruba ayrılırlar. Bu kontrollerin tamamına Visual Studio içerisinden Toolbox’ı (Araç Kutusu) kullanarak erişebilirsiniz.
Sunucu Kontrolleri (Server Controls)
asp.net uygulamalarında sunucu tarafındaki işlemlerin gerçekleşmesinde rol alacak kontrollere sunucu kontrolleri denir. Bir diğer tanımla aspx sayfasında eklediğimiz kontrollerimize aspx.cs sayfasında yani kod sayfamızda erişip özelliklerinden ve eventlerinden faydalanabildiğimiz kontrollerimizdir. Sunucu kontrolleri sayfanın Source kısmında tanımlarken sunucu tarafından çalışacağı runat=“server” ifadesi ile belirtilir. Bu yazımızda sunucu kontrolleri kendi içerisinde yer alan Standart, Data (Veri), Validation (Doğrulama) ve Navigation (Dolaşım) kontrollerini inceleyeceğiz.
Standart Kontroller (Standard Controls)
Label (Etiket) Kontrol
Sayfada bir metin nesnesi görüntülemek için kullanılır. Genellikle durağan metinleri görüntülemek amacıyla kullanılsa da, bir olayın tetiklenmesiyle de içeriği değiştirilebilir. Bu kontrolün en çok TEXT özelliği kullanılır.
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
Literal (Değişmez Etiket) Kontrol
Bu kontrol Label kontrolüne benze fakat BackColor, ForeColor, BorderColor, BorderStyle, BorderWidth, gibi özellikleri desteklemez. Ayrıca bu kontrole HTML tarafında style’de uygulamayız. Ek özellikler desteklemeden web sayfamızda statik bir metin görüntülemek için kullanılır.
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
TextBox (Metin Kutusu) Kontrol
TextBox kontrolü, web sayfalarında sıklıkça kullandığımız en önemli kontrollerdendir. Genellikle kullanıcıdan bilgi almak için kullanırız. Veri girişi için kullanılan bir giriş kontrolüdür.
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
TextBox Özellikler
SingleLine: Varsayılan olarak gelir. Kullanıcının tek bir metin satırına bilgi girişini sağlar.
MultiLine: Çok satırlı bilgi girişini sağlar.
Password: Kullanıcı tarafından girilen veriyi gizler.
MaxLength: Kullanıcı tarafından girilen karakter sayısını kısıtlar.
<asp:TextBox ID="TextBox1" runat="server" TextMode="MultiLine"></asp:TextBox>
<asp:TextBox ID="TextBox1" runat="server" MaxLength="6" TextMode="Password"></asp:TextBox>
TextBox Event
TextChanged: Texbox kontrolümüzün içeriğinde veya metninde değişiklik olduğu sürece tetiklenir. TextChanged olayı yalnızca, AutoPostBack özelliği True değerine sahip olduğunda çalışır.
Button (Buton-Düğme) Kontrol
Asp.net de üç tip buton kontrolü vardır. Buton kontrolü genel olarak, kullanıcı butona tıkladığında web sayfasını web sunucusuna geri gönderir. Burada Button’un click event’tinde yaptığınız işleme göre bir süreç oluşur.
Button: Varsayılan komut düğmesidir.
Link Button: Link şeklini alan komut düğmesidir.
Image Button: Görünümünü atadığınız resim ile özelleştirebildiğiniz komut düğmesidir.
Button Özellikleri
CausesValidation: Varsayılan olarak True gelir. Eğer true olarak ayarlanmışsa web sayfanızda bir doğruluma işlemi gerçekleştirdiğiyseniz o alanları doğru veri girişi yapıldığını denetler. Aksi halde onaylamayı atlar.
PostBackUrl: Tıklandığında formu belirtmiş olduğunuz sayfaya gönderir.
ValidationGrup: Tıklandığında hangi doğrulama grubunu kontrol edeceğini belirttiğimiz alandır.
OnClientClick: Istemci tarafı bir Click denetimi oluşturur. Örneğin aspx tarafında yazdığımız bir javascript kodunu butonumuza tıklandığında çalıştırılmasını istiyorsak JavaScript metodumuzun adını OnClientClik nesnesine atamamız gerekmektedir.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:Button ID="Button1"
UseSubmitBehavior="true"
Text="Open Web site"
OnClientClick="Navigate()"
runat="server" />
</form>
<script type="text/javascript">
function Navigate() {
javascript: window.open("http://www.alkanfatih.com");
}
</script>
</body>
</html>
Button kontrolümüzün en önemli Event’i click eventidir. Butona tıklandığında harekete geçer.
CheckBox (Seçim Kutusu) Kontrol:
CheckBox kontrolü mevcut seçeneklerden bir veya birden fazla seçeneği seçmek için kullanılır. Örneğin kullanıcıya ilgi alanlarını seçtirdiğiniz bir form düşünelim.
CheckBox Özellikleri
Checked: Onay kutusunun işaretli olup olmaması durumu belirttiğimiz alandır. Bool tipinde değer döner.
Text: Onay kutusunun ilişikli metnini almak veya ayarlamak için kullanırız.
AutoPostBack: Onay kutusunun durumunu değiştirdiğimizde sayfamızın servera gidip gelmesini istiyorsak (postback) yapmasını istiyorsak True özelliğini kullanırız. Varsayılan False’dır.
CheckBox kontrolümüzün en önemli event’i CheckedChanged eventidir. Bu event kontrol kutusu üzerinde ki chek işleminde bir değişiklik olduğunda tetiklenir.
CheckBoxList (Çoklu Seçim Kutusu) Kontrol
CheckBox kontrolünün gruplanmış ve listelenmiş halidir. Kullanıcıya bir veya birden fazla seçim yapma imkanı sunar.
RadioButton Kontrol
Mevcut seçeneklerden sadece birinin seçilmesini istediğimizde kullanırız. Radio buton bir kontrol grubu içerisinde çalışır. Bu kontrol grubunun içerisinde ne kadar radio buton olursa olsun yalnızca birini seçmenize olanak verir.
Radio Button Özellikler
GroupName: Radio butonlarımızın kontrol grubunu belirttiğimiz alandır. Eğer bir kontrol grubu oluşturmazsak tüm formu kontrol grubu olarak kabul eder. Böylece form üzerine birden fazla Radio buton ekleseniz de yalnızca birini seçebilirsiniz.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<h4>Cinsiyet:</h4>
<asp:RadioButton ID="RadioButton1" runat="server" Text="Bay" GroupName="Cinsiyet" />
<asp:RadioButton ID="RadioButton2" runat="server" Text="Bayan" GroupName="Cinsiyet" />
<h4>Meslek:</h4>
<asp:RadioButton ID="RadioButton3" runat="server" Text="Mühendis" GroupName="Meslek" />
<asp:RadioButton ID="RadioButton4" runat="server" Text="Yönetici" GroupName="Meslek" />
</form>
</body>
</html>
RadioButton kontrolümüzün en önemli event’i CheckedChanged eventidir. Bu event kontrol kutusu üzerinde ki chek işleminde bir değişiklik olduğunda tetiklenir.
RadioButtonList Kontrol
RadioButton kontrolünün gruplanmış ve listelenmiş halidir. Kullanıcı listedeki seçeneklerden yalnızca bir tanesini seçebilir.
DropDownList, ListBox, RadioButtonList, CheckBoxList, Bulleted List
Liste kontrollerinin önemli ortak özellikleri bulunmaktadır.
SelectedValue: seçili öğenin değerini geri döndürür.
SelectedIndex: seçili öğenin indeksini (sıra numarasını) geri döndürür.
SelectedItem: seçili öğenin metnini geri döndürür.
Items: öğenin eleman sayısını geri döndürür.
DataTextField: Öğelerin metnini sağlamak için kullanılır. Genellikle bu alan bir ver tabanından gelir.
DataTextValue: Öğelerin değerini sağlamak için kullanılır. Genellikle bu alan bir ver tabanından gelir.
DataSourceID: Veri kaynağının kontrol kimliğini sağlar.
Bu kontrollere veri yüklemenin birden fazla yolu vardır.
- Veri tabanı üzerinden öğe ekleme.
- Direk kod ile öğe (items yoluyla) ekleme.
- Özellik penceresinden (items yoluyla) öğe ekleme.
- HTML kullanarak öğe ekleme.
- Dahili veri tabanı denetimleri kullanarak veri ekleme.
DropDownList kontrol
Listelenen birden fazla öğeden tek bir seçim yapmamız gerektiği durumlarda kullanırız. Açılır bir metin penceresi sunar.
ListBox Kontrol
bir pencere içerisinde listelenmiş öğeler üzerinden birden fazla seçim yapmamıza olanak sağlar.
BulletedList Kontrol
öğeleri farklı stillerde görüntülemek için çok zengin bir içeriğe sahiptir. Listeyi sıralı veya sırasız olarak gösterebilirsiniz. Her liste öğesi için bir text, bir linkbuton ve benzeri kontroller oluşturabilirsiniz.
BulletedList kontrolünün, BulletStyle özelliğini kullanarak listelenen verilerinizin görünümünü özelleştirebilirsiniz. Desteklediği tipler aşağıdadır.
Circle, CustomImage, Disc, LowerAlpha, LowerRoman, NotSet, Numbered, Square, UpperAlpha, UpperRoman
Image Kontrol
Sayfada GIF, JPG, PNG veya kabul edilebilir diğer formatlarda resim göstermek için kullanılır. HTML’deki <img> etiketi ile benzerdir.
ImageMap Kontrol
Bir resim üzerinde koordinatlara göre başka sayfalara veya sayfa içerisindeki bir noktaya bağlantı atamak için kullanılır. Koordinatlar, poligonal, dairesel veya karesel olabilir.
ImageMap kontrolümüzün, CircleHotSpot özelliğini kullanarak resim üzerinde tıklanacak alanın koordinatlarını, şeklini, text’tini ve url’sini belirleyebiliriz.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm2.aspx.cs" Inherits="WebApplication1.WebForm2" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ImageMap ID="ImageMap1" runat="server" ImageUrl="~/Images/world.jpg">
<asp:CircleHotSpot
NavigateUrl="#"
X="75"
Y="290"
Radius="75"
HotSpotMode="Navigate"
AlternateText="GÜney Amerika"></asp:CircleHotSpot>
<asp:CircleHotSpot
NavigateUrl="#"
X="75"
Y="120"
Radius="75"
HotSpotMode="Navigate"
AlternateText="Kuzey America"></asp:CircleHotSpot>
</asp:ImageMap>
</div>
</form>
</body>
</html>
HiddenValue Kontrol
Sayfadan, sayfaya veri aktarmak için kullanılabilecek olan ve tasarımda görünmeyen bir kontroldür.
Literal Kontrol
İçine başka kontroller alabilen bir “Container Control” dür. Gizlendiği zaman içindeki tüm kontrol ve veriler ile gizlenir. Çalışma zamanında dinamik olarak sayfaya elementler eklemek istendiğinde kullanılır. Yani içerisine HTML kodları gönderebileceğimiz ve istediğimiz zamanda sayfa üzerinden gönderdiğimiz html kodların aktif olmasını sağlayan bir yapıdır.
Panel Kontrol
Literal kontrolü gibi diğer kontrolleri ver içerikleri gruplamak için kullanılan bu kontrolde gizlendiği zaman içindeki tüm kontrolleri gizlemiş olur. Literal’dan farklı olarak içerisini sürükle bırak ile dinamik kontrol ataması yapabiliriz.
PlaceHolder Kontrol
Literal ve Panel kontrollerine çok benzeyen bu kontrolde aynı işlevleri görür.
Calender Control
Sayfaya gelişmiş bir takvim eklemek için kullanılır. Takvim kontrolü üzerinden tarih seçimi (ay, gün, yıl veya tam tarih) ve tarih formatı işlemlerini gerçekleştirebiliriz.
Calender Control Event
SelectionChanged: Bir tarih seçimi yapıldığı zaman harekete geçer.
DayRender: Takvim kontrolünün her veri hücresi işlendiğinde harekete geçer.
VisibleMonthChanged: Kullanıcı bir ay değiştirdiğinde harekete geçer.
AdRotator Kontrol
Sayfaya bir rekleam değiştirgeci ekler. Bir XML dosyasından aldığı bilgilere göre sayfada reklamların değiştirilerek gösterilmesini sağlar. AdvertisementFile özelliğini kullanarak hazırladığımız XML dosyasının adresini belirtmemiz yeterlidir.
Örnek XML Dosyası
<?xml version="1.0" encoding="utf-8" ?>
<Advertisements>
<Ad>
<ImageUrl>∼ /Images/logo1.png</ImageUrl>
<NavigateUrl>http://www.TutorialRide.com</NavigateUrl>
<AlternateText>Advertisement</AlternateText>
<Impressions>100</Impressions>
<Keyword>banner</Keyword>
</Ad>
<Ad>
<ImageUrl>∼ /Images/logo2.png</ImageUrl>
<NavigateUrl>http://www.TutorialRide.com</NavigateUrl>
<AlternateText>Advertisement</AlternateText>
<Impressions>100</Impressions>
<Keyword>banner</Keyword>
</Ad>
<Ad>
<ImageUrl>∼ /Images/logo3.png</ImageUrl>
<NavigateUrl>http://www.CareerRide.com</NavigateUrl>
<AlternateText>Advertisement</AlternateText>
<Impressions>100</Impressions>
<Keyword>banner</Keyword>
</Ad>
<Ad>
<ImageUrl>∼ /Images/logo4.png</ImageUrl>
<NavigateUrl>http://www.TutorialRide.com</NavigateUrl>
<AlternateText>Advertisement</AlternateText>
<Impressions>50</Impressions>
<Keyword>banner</Keyword>
</Ad>
</Advertisements>
AdRotator Özellikler
ImageUrl: Gösterilecek resmin adresini temsil eder.
NavigateUrl: Reklama tıklandığında gideceği adresi temsil eder.
AlternateText: Resim gösterilmiyorsa, resim yerine metin görüntülemek için kullanılır.
Impressions: Bir reklamın ne sıklıkla görüneceğini belirleyen sayıdır.
Keyword: Reklamları filtrelemek veya bir reklam grubunu tanımlamak için kullanılır.
Wizard Kontrol
Sayfada adım adım çalışacak bir sihirbaz oluşturmak için kullanılır. WizardStep kontrolü ile wizard içerisine adımlar tanımlanmaktadır.
Wizard kontrolü, çok sayıda alt formda çalışabilecek şekilde uzun bir form tasarlamamıza olanak sağlar. Görevi adım adım işlemle gerçekleştirmemiz gereken durumlarda oldukça sık kullanılır.
WizartStep ile ilişkilendirilen StepType, o adım için görüntülenecek gezinti butonlarının tipini belirler.
- Start
- Step
- Finish
- Complete
- Auto
<asp:Wizard ID="Wizard1" runat="server" Height="75px" Width="140px">
<WizardSteps>
<asp:WizardStep runat="server" title="Step 1">
</asp:WizardStep>
<asp:WizardStep runat="server" title="Step 2">
</asp:WizardStep>
</WizardSteps>
</asp:Wizard>
FileUpload Kontrol
Sunucu tarafına dosya yüklenmesinde kullanılır.
One comment
Comments are closed.