C# DevExpress CheckedListBoxControl Seçilenleri Alma Sorunu , yazımız ile c sharp derslerimize devam ediyoruz. Bu yazımızda yine bir sorunun çözümünden bahsedeceğim. Bu bir hata değil bir hata almıyoruz ancak istediğimizi de yapamamış oluyoruz. Daha iyi anlamanız için gelin C# DevExpress CheckedListBoxControl Seçilenleri Alma Sorunu dersimizde geçelim
C# DevExpress CheckedListBoxControl Seçilenleri Alma Sorunu
CheckedListBoxControl, güzel bir devexpress nesnesidir. ComboBox ile CheckBox ‘u birleştirip CheckedListBoxControl ‘ü oluşturmuşlar diyebiliriz. Bu dersimizde bu nesneye hem verileri nasıl dolduracağımızı hemde bu nesneye doldurduğumuz verileri alma hakkındaki sorunumuzu göreceğiz ve çözeceğiz.
İlk önce istediğimizi yapamadığımız yöntemi vereyim. Bu yöntemde veriler listeye doluyor ancak seçili olanları alamıyoruz.
DataTable dt = new DataTable(); // verileri datatable' a dolduracağımız kodlar clb_ait_oldugu_kategoriler.DataSource = dt; clb_ait_oldugu_kategoriler.DisplayMember = "Kategori_adi"; clb_ait_oldugu_kategoriler.ValueMember = "Kategori_RECno";
Gördüğünüz gibi işlem bu kadar basit olmasına rağmen, bu yöntemle doldurduğumuz da hiçbir işimize yaramıyor gelen veriler.
NOT: Bu saçmalık hemen hemen her devexpress nesnesinde var. Bu yüzden illa devexpress combobox vs kullanacaksanız aşağıdaki yöntemi kullanın.
Şimdi gelelim doğru yönteme… Yine yukarıdaki örnek koddaki datatable’ı kullandığımızı varsayalım.
for (int i = 0; i < dt.Rows.Count; i++) { clb_ait_oldugu_kategoriler.Items.Add(dt.Rows["Kategori_adi"].ToString()); }
Bu yöntem ile doldurduğumuz da seçili olanları alabiliyoruz. Şimdiii gelelim nasıl aldığımıza…
string kategoriler =""; foreach (CheckedListBoxItem item in clb_ait_oldugu_kategoriler.Items) { if (item.CheckState == CheckState.Checked) kategoriler += item + ","; }
Gördüğünüz gibi, yukarıdaki şekilde CheckedListBoxControl nesnesindeki seçili olan verileri alabiliyoruz. Ancak burada bir püf nokta var.
Ben burada string kullandım ve her kategori arasına virgül atılmasını istedim yani birden fazla seçtiğimi düşünürsek şu şekilde olacak;
“Film, Dizi, Oyun, Anime,”
SQL ‘e de bu şekilde kayıt ediyorum. O andaki işimde bana bu yöntem lazım olduğundan dolayı bu şekilde yapma gereği duydum.
C# DevExpress CheckedListBoxControl Seçilenleri Alma Sorunu , yazımızda bu kadar dostlar diğer derslerimizde görüşmek üzere.
C Sharp Eğitim Seti ve ERP Programlama eğitimi sayfasına gitmek için tıklayınız. Buraya tıklayarak Github Projeme ulaşabilirsiniz.
Sağlıcakla ve takipte kalın.