En iyi yanıtlayıcılar
Comboboxtaki tekrar eden veriler hakkında

Soru
-
Aşağıdaki kod ile veritabanındaki tabloları comboboxa çekiyorum ama aynı tablo isimlerinden birden fazla gösteriyor. Bu durumu nasıl çözerim
private void baglan() { baglanti = new SqlConnection(@"Data Source=ERKANKESEMEN\VERITABANI;Initial Catalog=PersonelTakip;Integrated Security=True"); baglanti.Open(); DataTable dt = baglanti.GetSchema("Tables"); for (int i = 0; i < dt.Rows.Count; i++) { comboBoxFİRMA.Items.Add(dt.Rows[i]["TABLE_NAME"]); } baglanti.Close(); }
Yanıtlar
-
-
Sorun çözüldü hepinize çok teşekkür ederim. emeğinize sağlık sizlerden çok şey öğreniyorum hakkınızı helal edin.
private void baglan() { baglanti = new SqlConnection(@"Data Source=ERKANKESEMEN\VERITABANI;Initial Catalog=PersonelTakip;Integrated Security=True"); baglanti.Open(); DataTable dt = baglanti.GetSchema("Tables"); for (int i = 0; i < dt.Rows.Count; i++) { if(!comboBoxFİRMA.Items.Contains(dt.Rows[i]["TABLE_NAME"])) comboBoxFİRMA.Items.Add(dt.Rows[i]["TABLE_NAME"]); } baglanti.Close(); }
- Yanıt Olarak İşaretleyen Erkan KESEMEN 11 Ocak 2018 Perşembe 09:45
Tüm Yanıtlar
-
private void baglan() { baglanti = new SqlConnection(@"Data Source=ERKANKESEMEN\VERITABANI;Initial Catalog=PersonelTakip;Integrated Security=True"); baglanti.Open(); DataTable dt = baglanti.GetSchema("Tables"); baglanti.Close(); comboBoxFİRMA.DisplayMember = "TABLE_NAME"; comboBoxFİRMA.ValueMember = "TABLE_NAME"; comboBoxFİRMA.DataSource = dt; }
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
- Düzenleyen MuratAKSARAY 9 Ocak 2018 Salı 10:31
-
öncelikle ilginiz için teşekkür ederim. belirttiğiniz kodu ekledim fakat aşağıdaki kod kısmında koyu renkle belirttiğim yerde " Additional information: Bağlantı kapatılmadı. Bağlantının geçerli durumu: açık. " tarzında hata alıyorum. verdiğiniz kodun sonuna "baglanti.close();" ekleyerek denedim yine aynı hatayı aldım.
private void listele() { string tablo = comboBoxFİRMA.Text; string sorgu = "SELECT *FROM " + tablo; da = new SqlDataAdapter(sorgu, baglanti); ds = new DataSet(); baglanti.Open(); //Hatayı aldığım kısım da.Fill(ds, tablo); dataGridView1.DataSource = ds.Tables[tablo]; baglanti.Close(); }
private void baglan() { using (baglanti = new SqlConnection(@"Data Source=ERKANKESEMEN\VERITABANI;Initial Catalog=PersonelTakip;Integrated Security=True")) { baglanti.Open(); DataTable dt = baglanti.GetSchema("Tables"); comboBoxFİRMA.DisplayMember = "TABLE_NAME"; comboBoxFİRMA.ValueMember = "TABLE_NAME"; comboBoxFİRMA.DataSource = dt;
} }
- Düzenleyen Erkan KESEMEN 9 Ocak 2018 Salı 08:40
-
private void baglan() { baglanti = new SqlConnection(@"Data Source=ERKANKESEMEN\VERITABANI;Initial Catalog=PersonelTakip;Integrated Security=True"); baglanti.Open(); DataTable dt = baglanti.GetSchema("Tables"); var tables = dt.Rows.OfType<DataRow>().Select(=> x["TABLE_NAME"].ToString() ).Distinct(); comboBoxFİRMA.DataSource = tables; baglanti.Close(); }
şeklinde dener misin? -
listele metodunu nerede kullanıyorsunuz bilmiyorum. Ama using ile kullanılan bağlantı, blok bitince yok ediliyor. Büyük ihtimalle sorununuzun sebebi budur. Kodu sizin kullanım alışkanlığınıza göre düzenledim. Böylece kullanabilirsiniz...
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
-
-
Lütfen anlamama yardımcı olun. Bu sorunda, bir veri kataloğu içerisinde, aynı adlı birden fazla tablo olabileceğini varsayarak çözüm aramak doğru bir yaklaşım mıdır.?.
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
- Düzenleyen MuratAKSARAY 10 Ocak 2018 Çarşamba 12:56
-
-
Öncelikle ilgi ve alakanız İçin tekrar teşekkür ederim. Veri tabanında aynı isme ait tablom yok aksine bütün Tablolar Farklı isme sahipler. Comboboxta bu tablol isimleri birden fazla tekrar ediyor. Atıyorum veri tabanımda bir tane “a” isminde tablom var ve bu comboboxta 5 kere tekrar etmiş ama veri tabanımda sadece 1 adet var. Verdiğiniz kodu yarın sabah ofiste tekrar deneyeceğim.
-
-
-
Normalde o formum dolu aşağıdaki kodu yazınca linkteki görüntüyü alıyorum ama bu kodu silince herşey normale dönüyor bahsettiğiniz o kırmızı çarpılar felan bu kodu yazınca oluyor.
private void baglan() { baglanti = new SqlConnection(@"Data Source=ERKANKESEMEN\VERITABANI;Initial Catalog=PersonelTakip;Integrated Security=True"); baglanti.Open(); DataTable dt = baglanti.GetSchema("Tables"); var tables = dt.Rows.OfType<DataRow>().Select(x=> x["TABLE_NAME"].ToString() ).Distinct(); comboBoxFİRMA.DataSource = tables; baglanti.Close(); }
- Düzenleyen Erkan KESEMEN 10 Ocak 2018 Çarşamba 13:00
-
-
-
private void baglan() { using (SqlConnection bag = new SqlConnection(@"Data Source=ERKANKESEMEN\VERITABANI;Initial Catalog=PersonelTakip;Integrated Security=True")) { bag.Open(); DataTable dt = bag.GetSchema("Tables"); comboBoxFİRMA.DisplayMember = "TABLE_NAME"; comboBoxFİRMA.ValueMember = "TABLE_NAME"; comboBoxFİRMA.DataSource = dt; } }
Bunu kullanın...Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
-
-
Rows[i] kısmında [i] de problem oluşuyor.
if (!comboStokKodu.Items.Contains(dataGridView1.Rows[i].Cells[0].Value))
{
comboStokKodu.Items.Add(dataGridView1.Rows[i].Cells[0].Value.ToString());
}
- Düzenleyen Erkan KESEMEN 11 Ocak 2018 Perşembe 07:34
-
Aşağıdaki gibi comboBoxFİRMA.Items.Clear(); kodunu ekleyince tekrarlardan kurtuldum fakat bu sefer comboboxta listelenen tablolarıma tıklayıp gridviewe veri aktarmada şöyle bir hata alıyorum
" Additional information: Fill: SourceTable adı için boş olmayan bir dize bekleniyor." comboBoxFİRMA.Items.Clear(); bu kodu silince yine herşey eskisi gibi tekrar eden tablo isimleri geliyor ama verileri gridviewe aktarıyor. ne illet bişeymiş ya 1 haftadır bununla uğraşıyorum.private void listele() { string tablo = comboBoxFİRMA.Text; string sorgu = "SELECT *FROM " + tablo; da = new SqlDataAdapter(sorgu, baglanti); ds = new DataSet(); baglanti.Open(); da.Fill(ds, tablo); dataGridView1.DataSource = ds.Tables[tablo]; baglanti.Close(); }
private void baglan() { comboBoxFİRMA.Items.Clear(); { baglanti = new SqlConnection(@"Data Source=ERKANKESEMEN\VERITABANI;Initial Catalog=PersonelTakip;Integrated Security=True"); baglanti.Open(); DataTable dt = baglanti.GetSchema("Tables"); for (int i = 0; i < dt.Rows.Count; i++) { comboBoxFİRMA.Items.Add(dt.Rows[i]["TABLE_NAME"]); } baglanti.Close(); } }
-
Sorun çözüldü hepinize çok teşekkür ederim. emeğinize sağlık sizlerden çok şey öğreniyorum hakkınızı helal edin.
private void baglan() { baglanti = new SqlConnection(@"Data Source=ERKANKESEMEN\VERITABANI;Initial Catalog=PersonelTakip;Integrated Security=True"); baglanti.Open(); DataTable dt = baglanti.GetSchema("Tables"); for (int i = 0; i < dt.Rows.Count; i++) { if(!comboBoxFİRMA.Items.Contains(dt.Rows[i]["TABLE_NAME"])) comboBoxFİRMA.Items.Add(dt.Rows[i]["TABLE_NAME"]); } baglanti.Close(); }
- Yanıt Olarak İşaretleyen Erkan KESEMEN 11 Ocak 2018 Perşembe 09:45
-
Bunun çözüm olduğunu düşünmüyorum. Muhtemelen baglan() isimli metodunuz birden fazla çalışıyor. Dolayısıyla her çalıştığında tekrar tekrar ekleme işlemi yapıyor. Asıl düzeltmeniz gereken bu metodun neden birden fazla çalıştığını anlamak olmalı.
www.cihanyakar.com