Ana Sayfa » Ders Notları ve Örnekler » ASP.NET » Listelerde AutoPostBack Özelliği ve SelectedIndexChanged Olayı

Uyarılar :
  • Bu sayfada yazılanlar yeniden yayınlanamaz.
  • Bu örnek ders sırasındaki anlatımlardan derlenmiştir. Özellikle bir makale şeklinde yazılmamıştır. Bilgilerde eksiklikler bulunabilir.

Örnekte listeden bir şehir seçildiğinde bir tuş vs. tıklamaya gerek kalmadan sayfa yenilenip, ikinci bir listeye seçilen ilin ilçeleri doldurulmaktadır.

Örnek :


<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

    void Page_Load(Object o, EventArgs e)
    {

    }
    
    
    void lbSehirler_Degisti(Object o, EventArgs e)
    {
        String SecilenSehrinPlakaKodu = lbSehirler.SelectedValue;
        lbIlceler.Items.Clear();

        if (SecilenSehrinPlakaKodu == "06")
        {
            lbIlceler.Items.Add("Kazan");
            lbIlceler.Items.Add("Kızılcahamam");
            lbIlceler.Items.Add("Şereflikoçhisar");
            lbIlceler.Items.Add("Bala");
        }
        else if (SecilenSehrinPlakaKodu == "34")
        {
            lbIlceler.Items.Add("Aksaray");
            lbIlceler.Items.Add("Silivri");
            lbIlceler.Items.Add("Ataköy");
        }
        else if (SecilenSehrinPlakaKodu == "14")
        {
            lbIlceler.Items.Add("Gerede");
            lbIlceler.Items.Add("Seben");
            lbIlceler.Items.Add("Dörtdivan");
            lbIlceler.Items.Add("Yeniçağa");
        }
    }
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
        İller :
        <asp:DropDownList id="lbSehirler" runat="server" AutoPostBack="true"
             OnSelectedIndexChanged="lbSehirler_Degisti">
            <asp:ListItem Text="Ankara" Value="06" />
            <asp:ListItem Text="İstanbul" Value="34" />
            <asp:ListItem Text="Bolu" Value="14" />
        </asp:DropDownList><br />
        İlçeler :
        <asp:DropDownList ID="lbIlceler" runat="server"></asp:DropDownList>
    </form>
</body>
</html>

DropDownList, ListBox, CheckBoxList, RadioButtonList web kontrollerinin "AutoPostBack" (formu otomatik olarak sunucuya postala) özelliğine "true" değeri verildiğinde, listenin bir elemanı tıklandığında sayfadaki form bir submit tuşu tıklanmış gibi sunucuya POST edilir (form bilgileri sunucuya gönderilir).

SelectedIndexChanged (seçilen eleman sırası değişti) olayı ise, listeden bir eleman seçildiğinde ayrıca ve özellikle çalıştırılacak bir yordam belirlememizi sağlar. Genellikle AutoPostBack="true" özelliği ve değeri ile kullanılır.

Örneğimizde "lbSehirler" isimli DropDownList web kontrolünde bir eleman seçildiğinde kontrolün AutoPostBack özelliği değeri "true" olduğundan form sunucuya gönderilir. Sunucuda DropDownList kontrolümüz için bir SelectedIndexChanged (lbSehirler_Degisti) olayı mevcut olduğundan bu olay otomatik olarak çalıştırılacaktır.

İletişim : hazirsite@gmail.com