Ana Sayfa » Ders Notları ve Örnekler » ASP.NET » Panel Kontrolü ve Dinamik Olarak Kontrol Ekleme

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.

Ö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)
    {

    }

    /*
    ASP:Panel kontrolü bir grup kontrolü taşımak için kullanılır. Panel veya kontrolleri
    gerektiği zamanlarda görünmez yapılarak veya yerleri değiştirilerek ekran düzenlemesi vb.
    işlemler gerçekleştirilir. Panellere dinamik olarak kontrol ekleme de (HTML bölümünde
    tanımlamadan kodlarla kontrol oluşturup bir yerlere ekleme) sıkça kullanılır.
    */

    void lb1_Click(Object o, EventArgs e)
    {    
        // Görünen paneli değiştir.
        
        if (pnl1.Visible)
        {
            pnl1.Visible = False
            pnl2.Visible = True
        }
        else
        {
            pnl1.Visible = True
            pnl2.Visible = False
        }

        // Alttaki 2 satır, üsttekilerle aynı işi görür.
        // pnl1.Visible = !pnl1.Visible
        // pnl2.Visible = !pnl2.Visible
    }

    /*
    Paneller programlayarak kontroller eklemek veya çıkarmak
    için de kullanılır. Bunun için Panel kontrolünün Controls
    koleksiyonu kullanılır. Bu koleksiyonun Add metodu ile
    herhangi bir Web Kontrolünü veya HTML Kontrolünü panele ekleyebiliriz.
    */

    void lb2_Click(Object o, EventArgs e)
    {
        // pnl1'e bir TextBox web kontrolü ekle..

        pnl1.Controls.Add(new TextBox())
        
        // veya
        /*
        TextBox tb = new TextBox();
        tb.MaxLength = 15;           // Kontrolün bir (ve belki başka da) özelliğini belirle
        pnl1.Controls.Add(tb);
        */

    }

    void lb3_Click(Object o, EventArgs e)
    {
        // pnl2'ye bir HTML Button Kontrolü ekle.
        pnl2.Controls.Add(new System.Web.UI.HtmlControls.HtmlButton())
    }

</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">
    <asp:Panel ID="pnl1" runat="server" Visible="true" BorderStyle="Inset" BorderWidth="2">
      1. Panel<br />
      Adınız
      <asp:TextBox ID="tbAdi" runat="server" />
    </asp:Panel>
    
    <asp:Panel ID="pnl2" runat="server" Visible="false" BorderStyle="inset" BorderWidth="2">
      2. Panel<br />
      Soyadınız
      <asp:TextBox ID="tbSoyadi" runat="server" />
    </asp:Panel>
    
    <asp:LinkButton ID="lb1" runat="server" OnClick="lb1_Click"
                       Text="Diğer Paneli Göster" /><br />
    <asp:LinkButton ID="lb2" runat="server" OnClick="lb2_Click"
                       Text="1. panele bir metin kutusu (TextBox web kontrolü) ekle" /><br />
    <asp:LinkButton ID="lb3" runat="server" OnClick="lb3_Click"
                       Text="2. panele bir tuş ekle (HTML Button kontrolü)" />
    
    </form>
</body>
</html>

İletişim : hazirsite@gmail.com