Çözüldü C# Kayıt arama yapma

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

kodlayamadikabi

Femtopat
Katılım
28 Ekim 2020
Mesajlar
38
Merhaba arkadaşlar, kodlarım aşağıdaki şekilde, list1'den seçim yapmadan sadece text e yazarak kayıt aratma yapmak istiyorum.
Yazdığım kod hata vermiyor ama doğru çalışmıyor.
private void button2_Click(object sender, EventArgs e)
{

if (textBox1.Text == listBox1.Items.ToString())
{
MessageBox.Show("ARANAN KAYIT VAR");
}
else
{
MessageBox.Show("ARANAN KAYIT yok");

}

}
 

Dosya Ekleri

  • Ekran görüntüsü 2020-11-03 162939.png
    3,1 KB · Görüntüleme: 73
Çözüm
Yazdığım kod hata vermiyor ama doğru çalışmıyor.
Sebebi listBox'un içindeki yazı koleksiyonunu doğrudan yazıya çevirmeye çalışıyor olmanız.

Yani şu komutun çıktısı böyle:

Kod:
MessageBox.Show(listBox1.Items.ToString());



Ben iki yöntem ile yaptım ama hangi yöntemin daha doğru olduğunu bilen birisi söylerse iyi olur.

"Contains" ile bu şekilde:

C#:
if (listBox1.Items.Contains(textBox1.Text))
{
    MessageBox.Show("Bulundu.");
}


For each ile ise bu şekilde oluyor:

C#:
foreach (string yazi in listBox1.Items)
{
    if (yazi.Equals(textBox1.Text))
    {
        MessageBox.Show("Bulundu.");
    }
}

Bu kodları anlatmamı isterseniz anlatabilirim.
Yazdığım kod hata vermiyor ama doğru çalışmıyor.
Sebebi listBox'un içindeki yazı koleksiyonunu doğrudan yazıya çevirmeye çalışıyor olmanız.

Yani şu komutun çıktısı böyle:

Kod:
MessageBox.Show(listBox1.Items.ToString());



Ben iki yöntem ile yaptım ama hangi yöntemin daha doğru olduğunu bilen birisi söylerse iyi olur.

"Contains" ile bu şekilde:

C#:
if (listBox1.Items.Contains(textBox1.Text))
{
    MessageBox.Show("Bulundu.");
}


For each ile ise bu şekilde oluyor:

C#:
foreach (string yazi in listBox1.Items)
{
    if (yazi.Equals(textBox1.Text))
    {
        MessageBox.Show("Bulundu.");
    }
}

Bu kodları anlatmamı isterseniz anlatabilirim.
 
Son düzenleme:
Çözüm
Contains ile olanı anlatır mısın lütfen.
 
Contains ile olanı anlatır mısın lütfen.
Contains, parantez içindeki yazıyı(Bu kodlarda textBox1'in içindeki yazı oluyor.), bir listenin içinde arar.(Listemiz ise listBox1.Items) Eğer eşleşme bulursa "true" olarak geri dönüş verir.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…