ListView da Arama Yapmak
Merhaba Arkadaşlar, bu makalemizde TextBox a girmiş olduğumuz stringi
ListView nesnesinde aratacağız. Bu örnekte Ürün Adına göre arama yapacağız.
Formunuzu Şekil 1 deki gibi oluşturun.
Form1.cs
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;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
DataTable tablo;
private void Form1_Load(object sender, EventArgs e)
{
//tablo oluşturup bilgileri giriyoruz.
tablo = new DataTable();
tablo.Columns.Add("Id", typeof(string));
tablo.Columns.Add("UrunAdı", typeof(string));
tablo.Columns.Add("Fiyatı", typeof(string));
tablo.Rows.Add("1", "Apple Laptop","1500");
tablo.Rows.Add("2", "Casper Laptop", "1500");
tablo.Rows.Add("3", "IBM Laptop", "1500");
tablo.Rows.Add("4", "SATA2 Harddisk","100");
tablo.Rows.Add("5", "DDR3 Ram","110");
tablo.Rows.Add("6", "4 GB Flash Bellek","15");
tablo.Rows.Add("7", "4 GB microSD ", "15");
tablo.Rows.Add("10", "500 GB Pocket Harddisk","130");
tablo.Rows.Add("11", "19 inc LCD Ekran", "150");
//listview nesnesindeki sutunları oluşturuyoruz.
listView1.View = View.Details;
listView1.Columns.Add("Id",50);
listView1.Columns.Add("Ürün Adı",100);
listView1.Columns.Add("Fiyatı (USD)",50);
ekle();
textBox1.TextChanged += new EventHandler(textBox1_TextChanged);
}
void textBox1_TextChanged(object sender, EventArgs e)
{
ekle();
}
private void ekle()
{
listView1.Items.Clear();
foreach (DataRow row in tablo.Rows)
{
//Textboxa girilen stringi ListView da UrunAdı sütununda
//aratıyoruz.
if (row["UrunAdı"].ToString().StartsWith(textBox1.Text))
{
ListViewItem item = new ListViewItem(row["Id"].ToString());
item.SubItems.Add(row["UrunAdı"].ToString());
item.SubItems.Add(row["Fiyatı"].ToString());
listView1.Items.Add(item);
}
}
}
}
}
Bir makalenin daha sonuna geldik. Bir sonraki makalede görüşmek dileğiyle. Hoşçakalın. Bahadır ŞAHİN