ComboBox Özellikleri C# Ders 19

ComboBox  Özellikleri C# Ders 19

Daha fazla bilgi için : www.gorselprogramlama.com

ComboBox Özellikleri:

Items.Add Özelliği: ComboBox’a eleman eklemek için kullanılır.

Örnek:

[code language=”csharp”]

private void Form1_Load(object sender, EventArgs e)

{

comboBox1.Items.Add(“İstanbul”);

comboBox1.Items.Add(“İzmir”);

comboBox1.Items.Add(“Ankara”);

}

[/code]

Text Özelliği: ComboBox’ın girilen , seçilen veya gözüken elemanı temsil eder.

Örnek:

[code language=”csharp”]

private void Form1_Load(object sender, EventArgs e)

{

comboBox1.Items.Add(“İstanbul”);

comboBox1.Items.Add(“İzmir”);

comboBox1.Items.Add(“Ankara”);

comboBox1.Text = “İstanbul”

}//Daha fazla bilgi için : www.gorselprogramlama.com

[/code]

Örnek:

[code language=”csharp”]

private void button1_Click(object sender, EventArgs e)

{

label1.Text = comboBox1.Text;

}

[/code]

Items Özelliği: ComboBox’ın eleman içeriğini öğrenmek için kullanılır.

Örnek:Daha önce Text’teki elemanı direkt yazarak girmiştik.Şimdi ise comboBox’ın Text elemanını comboBox’taki herhangibir eleman olarak belirleyelim.Mesela 0.eleman yani İstabul ComboBox’ın Text’tinde gözüksün.

[code language=”csharp”]

private void Form1_Load(object sender, EventArgs e)

{

comboBox1.Items.Add(“İstanbul”);

comboBox1.Items.Add(“İzmir”);

comboBox1.Items.Add(“Ankara”);

comboBox1.Text = comboBox1.Items[0].ToString();

}

[/code]

 

 

 

Items.Clear Özelliği:ComboBox’ı temizlemek  için kullanılır.

Örnek:

[code language=”csharp”]

private void Form1_Load(object sender, EventArgs e)

{

comboBox1.Items.Add(“İstanbul”);

comboBox1.Items.Add(“İzmir”);

comboBox1.Items.Add(“Ankara”);

}

private void button1_Click(object sender, EventArgs e)

{

comboBox1.Items.Clear();

}

[/code]

Temizle tıklanınca sonuç.

Items.Count Özelliği:ComboBox’taki  eleman sayısını verir.

Örnek:

[code language=”csharp”]

private void Form1_Load(object sender, EventArgs e)

{

comboBox1.Text = “İstanbul”;

comboBox1.Items.Add(“İstanbul”);

comboBox1.Items.Add(“İzmir”);

comboBox1.Items.Add(“Ankara”);

}//Daha fazla bilgi için : www.gorselprogramlama.com

private void button1_Click(object sender, EventArgs e)

{

label1.Text= comboBox1.Items.Count.ToString();

}

[/code]

Daha fazla bilgi için : www.gorselprogramlama.com

Items.IndexOf  Özelliği:ComboBox’ta eleman aramak için kullanılır.Eğer belirtilen eleman var ise sıra numarasını ,  yok ise -1  değerini döndürür.

Not: Elemanların sıra numaralarının sıfırdan başladığını unutmayın.Yani 0.eleman–>İstanbul 1.eleman–>İzmir gibi.

İpucu : Mesela  ekrana elaman sayısını yazdırmak istiyorsunuz. 0.elemanı 1. eleman olarak yazdırmak istiyorsanız.Bunu için  komutsatırı+1 derseniz  istediğinizi yapmış olursunuz.

Örnek:

[code language=”csharp”]

private void Form1_Load(object sender, EventArgs e)

{

comboBox1.Items.Add(“İstanbul”);

comboBox1.Items.Add(“İzmir”);

comboBox1.Items.Add(“Ankara”);

comboBox1.Text = comboBox1.Items[0].ToString();

}

private void button1_Click(object sender, EventArgs e)

{

label2.Text = comboBox1.Items.IndexOf(textBox1.Text).ToString();

}

[/code]

Örnek:

[code language=”csharp”]

private void Form1_Load(object sender, EventArgs e)

{

comboBox1.Items.Add(“İstanbul”);

comboBox1.Items.Add(“İzmir”);

comboBox1.Items.Add(“Ankara”);

}

private void button1_Click(object sender, EventArgs e)

{

if (comboBox1.Items.IndexOf(textBox1.Text) != -1) MessageBox.Show(“Girdiğiniz şehir ismi açılır listede mevcut”);

else comboBox1.Items.Add(textBox1.Text);

}//Daha fazla bilgi için : www.gorselprogramlama.com

[/code]

Yukarıda gördüğümüz gibi textbox’a girilen şehir combobox’ta  var ise eklemez.Bu örnek Items.Contains ve FindStringExact ilede yapılabilir.

Items.Contains Özelliği: ComboBox’ta eleman aramak için kullanılır.Eğer belirtilen eleman var ise true , yok ise false  değerini döndürür.

Örnek:

[code language=”csharp”]

private void Form1_Load(object sender, EventArgs e)

{

comboBox1.Items.Add(“İstanbul”);

comboBox1.Items.Add(“İzmir”);

comboBox1.Items.Add(“Ankara”);

comboBox1.Text = comboBox1.Items[0].ToString();

}

private void button1_Click(object sender, EventArgs e)

{

label2.Text = comboBox1.Items.Contains(textBox1.Text).ToString();

}

[/code]

FindStringExact Özelliği:ComboBox’ta eleman aramak için kullanılır.Eğer belirtilen eleman var ise sıra numarasını , yok ise -1  değerini döndürür.

Örnek:

[code language=”csharp”]

private void Form1_Load(object sender, EventArgs e)

{

comboBox1.Items.Add(“İstanbul”);

comboBox1.Items.Add(“İzmir”);

comboBox1.Items.Add(“Ankara”);

comboBox1.Text = comboBox1.Items[0].ToString();

}

private void button1_Click(object sender, EventArgs e)

{

label2.Text = comboBox1.FindStringExact(textBox1.Text).ToString();

}

[/code]

Not : Arama işlemini belirli bir elemandan başlatabilirsiniz.

Örnek : FindStrintExact(“gorsel”,3)  —>gorsel kelimesini 4. (elemanların sıfırdan başladığını unutmayın.) elemandan itibaren başlayarak ara.(var ise sıra numarasını yok ise -1 değerini döndürür.)

FindString Özelliği: ComboBox’ta eleman aramak için kullanılır.Eğer belirtilen metnin karakter sıraları comboBox’taki harhangi bir  elemanın karakter sıraları ile eşleşiyorsa  ise sıra numarasını , tersi ise -1  değerini döndürür.Örnek ile daha iyi anlayacağınızı düşünüyorum.

Örnek:

[code language=”csharp”]

private void Form1_Load(object sender, EventArgs e)

{

comboBox1.Items.Add(“İstanbul”);

comboBox1.Items.Add(“İzmir”);

comboBox1.Items.Add(“Ankara”);

comboBox1.Text = comboBox1.Items[0].ToString();

}

private void button1_Click(object sender, EventArgs e)

{

label2.Text = comboBox1.FindString(textBox1.Text).ToString();

}

[/code]

Aşağıdaki textbox  yazacağımız ifadelere göre çıkış değerleri:

İ=1   İz=1   İzm=1  İzmi=1  İzmir=1  İzmirx=-1  İzmirxx=-1  İstan=0  İstanb=0  İstanbul=0  İstanbulffff=-1  Anka=2  Ankara=2 Ankarayy=-1 Nevşehir=-1  gibi

Not : Arama işlemini belirli bir elemandan başlatabiliriz.

Örnek:  FindString(“program”,6)

Dersin videolu anlatımı ve anlatımda yapılan projeyi indirmek için

Tıklayınız

Yorumlar 20

  • sıralama yapabilirmiyiz.
    örneğin: İ yazınca hemen i ile başlayan istanbul ve izmir gelmeli.
    sonra İz deyince İzmir gelmeli.
    bunun makrosu nasıl?

  • onu veri tabanından veri çekerken yapabilirsiniz.kırtasiye takip programında söylediğinize benzer uygulama kullanmıştık.Bu örneğe bakabilirsin. link : http://www.gorselprogramlama.com/kirtasiye-takip-programi-1-0-c-net

  • Peki random la bir sayı üretiyoruz comboboxda da 10 tane veri var üretilen sayıya eşit olan index numaralı veriyi bir textboxa nasıl yazdırabiliriz? 😀

  • Çok güzel bir siteniz var 🙂

  • Çok teşekkürler. Süper anlatmışsınız.

  • Merhabalar:
    İki tane veri tabanı var. İkisinden de ayrı ayrı veri alıp ayrı combobox lara yerleştirmek istiyorum. Nasıl yaparım. Tek veri alımını aşşağıdaki gibi yaptım. Aynı formdaki diğer bir combobox a da başka bir veri tabanından veri aktarmak istiyorum. Aşağıdaki gibi yaparsam 1. ve 2 comboboxta her kayıdı 3 er kez tekrarlıyor.

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Data.OleDb;

    namespace WindowsFormsApplication1
    {
    public partial class Form6 : Form
    {
    public Form1 frm1;
    public Form6()
    {
    InitializeComponent();
    }
    OleDbConnection bag = new OleDbConnection(“Provider = Microsoft.Ace.OleDb.12.0;Data Source = data.accdb”);
    OleDbCommand kmt = new OleDbCommand();
    private void Form6_Load(object sender, EventArgs e)
    {
    comboBox3.Items.Clear();
    comboBox4.Items.Clear();
    OleDbDataReader oku;
    bag.Open();
    kmt.Connection = bag;
    kmt.CommandText = “Select * From vetKayit , tohKayit “;
    oku = kmt.ExecuteReader();
    while (oku.Read())
    {
    comboBox3.Items.Add(oku[1]);
    comboBox4.Items.Add(oku[0]);
    }

    bag.Close();
    }

    private void comboBox3_SelectedIndexChanged(object sender, EventArgs e)
    {

    }

    private void comboBox4_SelectedIndexChanged(object sender, EventArgs e)
    {

    }

    private void btnCikis_Click(object sender, EventArgs e)
    {
    Application.Exit();

    }

    }
    }

  • benim bi sorunum var şimdi ComboBox 1 den bir değer seçtiğimizde ComboBox 2 de bazı verileri gizleyecek nasıl yapabilirim bunu ??

  • Omer:
    Aşağıdaki verdiğim linkte 1.soruda yapın işlemde dediğine benzer bir olay var.İnceleyebilirsin.
    link : http://www.gorselprogramlama.com/vbnet-yazili-sorulari/

  • Peki program başlatıldığı zaman comboBox tan seçilen öğeyi list box a yazdırmak için ne yapmam lazım ?

  • Murat :
    Formun Load olayına şu kodu yaz. ListBox.Items.Add(ComboBox.SelectedText);

  • Merhabalar;

    bir veritabanında yeni kayıt ekleme işlemi yaparken combobox tan seçilen değerin kaydedilmesini istiyorum. normal kayıt ekleme prosedürünü yapıyorum ama bir türlü kayıt eklenmiyor. combobox ile alakalı bir problem veriyor. Basit bir örnekle ne yapabilirim. Yardımcı olabilir misiniz?

  • Merhaba,

    bağlantılı combobox yapmak istiyorum. birinci comboboxta seçilenlere göre 2. combobox değerlerinin değişmesini istiyorum. nasıl yapabilirim.
    teşekkürler

  • selaminko

  • Merhaba
    Bir sorun olacaktı.
    bir tane combobox ım var.Seçeneklerde Çalışıyor, Ayrıldı diye iki seçenek var.
    Ben Ayrıldı seçeneğine tıkladığımda gizli olan dateTimePicker göstersin istiyorum.Yardımcı olabilir misiniz?

  • Ebru Kumser :
    bir tane combobox ım var.Seçeneklerde Çalışıyor, Ayrıldı diye iki seçenek var.
    Ben Ayrıldı seçeneğine tıkladığımda gizli olan dateTimePicker göstersin istiyorum.
    Cevap :

    private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
    if (comboBox1.Text==”Ayrıldı”) dateTimePicker1.Visible=true;
    }

  • merhaba
    bir sorum olacaktı .
    combobox ın içerisini veri tabanından çektiğim sıralı rakamlar ile doldurmaktayım bir button yardımı ile combobox ın içindeki en büyük rakamı bulup onu bir artırmak istiyorum.
    teşekkürler.

  • combobox ın içine çektiğimiki ayrı veri clıcklediğimde sutun olarak başlıklı şekilde gelsin istiyorum teşekkürler ….

  • Merhaba,
    2 konuda yardım rica edeceğim,
    Bir projede 2 amaçla combobox kullanıyorum.
    Biri program içine gömdüğüm aktif, pasif gibi seçenekleri olan statü seçeneği için ve içerisinde şehirler olan şehir seçimi için. Bunlar sabit değerler olduğu için tablo açmadım. APP içerisine class olarak ekledim ve form loadına yazarak form açılırken dolduruyorum.

    Diğeri de SQL veri tabanından kullanıcılar gibi büyük verileri seçmek için.

    Sorum aslında aynı, bu iki tip durumda da ben yazdıkça combo box içerisindeki verilerden arayarak bana listelesin istiyorum. Özellikle SQL den çekilenler için.. Teşekkürler.

  • Kadir :
    comboxbox’ın change olayına select deyimi ile arama yaptırıp ona göre değerleri combobox’a akatarman lazım.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir