我正在尝试为我的列表视图创建一个搜索框,但无法正常工作 [英] I am trying to make a search box for my listview, but not work correctly
本文介绍了我正在尝试为我的列表视图创建一个搜索框,但无法正常工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
The code only works once when you start
我尝试过的方法:
What I have tried:
private void textBox1_TextChanged(object sender, EventArgs e)
{
for (int i = 0; i < listView1.Items.Count; i++)
{
if (listView1.Items[i].SubItems[0].Text.Contains(textBox1.Text) ||
listView1.Items[i].SubItems[1].Text.Contains(textBox1.Text) ||
listView1.Items[i].SubItems[2].Text.Contains(textBox1.Text))
{
productList.Add(listView1.Items[i]);
}
}
if ( !(string.IsNullOrWhiteSpace(textBox1.Text)) )
{
foreach (ListViewItem item in listView1.Items)
{
if (productList.Find(x => x == item) == null)
{
listremovedProducts.Add(item);
listView1.Items.Remove(item);
}
}
}
else
{
try
{
foreach (var item in listremovedProducts)
{
listView1.Items.Add(item);
}
}
catch (Exception) { };
}
}
}
推荐答案
<pre> private void textBox1_TextChanged(object sender, EventArgs e)
{
if (!string.IsNullOrWhiteSpace(textBox1.Text))
{
for (int i = 0; i < listView1.Items.Count; i++)
{
if ((listView1.Items[i].SubItems[0].Text.Substring(0,textBox1.Text.Length) != textBox1.Text ||
listView1.Items[i].SubItems[1].Text.Substring(0,textBox1.Text.Length) != textBox1.Text||
listView1.Items[i].SubItems[2].Text.Substring(0, textBox1.Text.Length) != textBox1.Text))
{
listView1.Items.Remove(listView1.Items[i]);
i--;
}
}
}
else
{
foreach (ListViewItem item in listView1.Items)
{
listView1.Items.Remove(item);
}
foreach (ListViewItem item in listesas)
{
listView1.Items.Add(item);
}
}
}
这篇关于我正在尝试为我的列表视图创建一个搜索框,但无法正常工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文