Asp.Net CheckboxList İle Dinamik Sorgulama Yapma

Herhangi bir sayfada listelediğiniz verilerden kullanıcının seçtiği şartlara uygun olanlarının görüntülenmesini isteyebilirsiniz. Bunun için form üzerine bir gridview ve CheckboxList ekleyerek sorgulama şartlarını ve listeyi oluşturdunuz kullanıcı sayfayı açtı tüm bilgiler karşısında ama sadece istediklerini seçebilmek için CheckboxList içerisinden istediği elemanları seçti ve listeleme yapılması lazım nasıl olacak diyorsanız hemen başlayalım. İlk olarak form görüntüsünü oluşturuyoruz.
checklistboxsorgu

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>aspnetornekleri.com Gridview İşlemleri</title>
    <link href="Css/GridStyle.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <form id="form1" runat="server">
    <div>
    Listelenecek İli Seçin
    <asp:CheckBoxList ID="CheckBoxList1" runat="server" AutoPostBack="True" 
            onselectedindexchanged="CheckBoxList1_SelectedIndexChanged" 
            RepeatDirection="Horizontal">
            <asp:ListItem>sivas</asp:ListItem>
            <asp:ListItem>tokat</asp:ListItem>
            <asp:ListItem>amasya</asp:ListItem>
        </asp:CheckBoxList>
     <asp:GridView CssClass="grid"  ID="grdbilgiler" HeaderStyle-CssClass="C3GridHeader" GridLines="None" ClientIDMode="Static"
            Width="30%" runat="server"  >          
        </asp:GridView>
    </div>   
    </form>
</body>
</html>

Şimdi sıra CheckboxList içerisinden seçilenlere göre sorgumuzu ve listelenen bilgileri değiştirmeye geldi. Yapacağımız işlemler CheckboxList içerisinde seçili olan var mı yok mu kontrol ediyoruz daha sonra seçilileri sorgumuza parametre olarak ekliyoruz CheckBoxList1’in SelectedIndexChanged olayına aşağıdaki kodları yazıyoruz

string parametre = "";
        int sira = 0;
        for (int i = 0; i < CheckBoxList1.Items.Count; i++)
        {
            if (CheckBoxList1.Items[i].Selected)
            {
                sira++;
                if (sira > 1)
                {
                    parametre += ",";
                } //www.aspnetornekleri.com
                parametre += "'" + CheckBoxList1.Items[i].Value + "'";
            }
        }
        string constr = ConfigurationManager.ConnectionStrings["ogrenciConnectionString"].ConnectionString;
        SqlConnection baglanti = new SqlConnection(constr);     
        baglanti.Open();     
        SqlCommand komut;     
        if (sira == 0)
        {
            komut = new SqlCommand("Select ad,soyad,adres from kayit", baglanti);
        }
        else //www.aspnetornekleri.com
        {
            komut = new SqlCommand("Select ad,soyad,adres from kayit  where adres IN (" + parametre + ")", baglanti);
        }
        grdbilgiler.DataSource = komut.ExecuteReader();
        grdbilgiler.DataBind();
        baglanti.Close();
  • sahin

    arkadaşım acil yardıma ihtiyacım var

    ikinci checkboxlist kullanıp başka tablodan nasıl kullanabilirim sahibiden.com da örnek gibi yardımcı olursan sevinirim…