Listbox Çoklu Seçim İle Veritabanı Sorgulama

Listbox ile çoklu seçim özelliğini kullanarak veritabanını birden fazla koşul ile rahatça sorgulayabilirsiniz. Bunun için Listbox’un MutliSelect özelliğini properties penceresinden MultiExtented ayarlayınız ve aşağıdaki kod parçacığını istediğiniz gibi düzenleyip sorgunuza dahil edebilirsiniz.

[csharp]

int tut=0;

for (int i = 0; i < listBox1.Items.Count; i++) //listbox’ın elemanlarının sayısını alır. Kaç tane değer var diye bakar.
{
if (listBox1.GetSelected(i) == true) // i. eleman seçili mi diye kontrol eder.
{
tut++;
if (tut == 1)
{
sorguSecimli += string.Format(" (‘{0}’", listBox1.Items[i].ToString()); // seçiliyse  sorgu string’ine ekler.
}
else
{
sorguSecimli += string.Format(" ,'{0}’", listBox1.Items[i].ToString()); // seçiliyse sorgu string’ine ekler.
}

}

[/csharp]

Gelelim ne için kullanadığıma? Çalıştığım şirket için geliştirdiğim projemde Listbox’tan çoklu seçim ile dinamik sorgu hazırlamam gerekiyordu. Bunun için string sorgu=” select * from tablom where şartlar” diye bir string tanımladım. Where kısmı listbox’tan seçilen değere göre dinamik oluştururmalıydı. Bunun için üstteki kod parçacığımla sorguma ekleme yaptım. Ben sorguma in (şart,şart,şart) t-sql komutunu kullandığım için yukarıdaki gibi bir if yapısını daha dahil ettim. Size sorgunuza göre bu yöntemle şartlarınızı dinamik bir şekilde oluşturabilirsiniz. Konu ile ilgili sorularınızı yorum panelinden bana sorabilirsiniz.

Mesut Güneş

Selçuk Üniversitesi Bilgisayar programcılığı bölümünden mezun olduktan sonra birçok firmada Yazılım, İş zekası ve Veritabanı Uzmanı olarak çalıştım. Şuan Türkiye’nin en büyük şirketlerinden biri olan Doğan Online’da Veritabanı Yöneticisi olarak çalışıyorum.

You may also like...

1 Response

  1. Muhammet dedi ki:

    Vb’te bu işlemi nasıl yapabiliriz?

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.