0

我正在做一个使用列表框的项目,我可以添加项目、删除项目、更新项目但我无法搜索,这是我的搜索代码

string search = Person.listperson[listBox1.SelectedIndex].lastname;
            foreach (String s in search)
            {
                if (s.Equals(textBox6.Text))
                {
                     //show searched items
                    MessageBox.Show("Success!");
                }
            }

你能帮我解决这个问题吗?谢谢 :)

我这里有一个搜索代码,但它不适用于按钮,我怎样才能将它应用到按钮上?

private void textBox6_TextChanged(object sender, EventArgs e)
        {
            int index = listBox1.FindString(this.textBox6.Text);
            if (0 <= index)
            {
                listBox1.SelectedIndex = index;
            }
        }
4

4 回答 4

4

尝试这样的事情,为您的按钮添加一个点击事件并将您的代码放入其中。这对我有用。

private void button1_Click(object sender, EventArgs e)
{
    int index = listBox1.FindString(textBox6.Text);
    if (index > -1)
    {
        listBox1.SelectedIndex = index;
    }
}
于 2013-02-06T05:41:55.593 回答
2

不确定您到底要做什么,但这里有一些示例。
另外,开始给变量起有用的名字。如果您在一个月内回到此代码,您将不知道那里发生了什么或发生了什么textBox6

textBox6在整个listperson集合 中查找字符串 ( ):

var list = Person.listperson.Where(p => p.lastname.Contains(textBox6.Text));

要检查特定项目listperson是否具有部分textBox6值:

var search = Person.listperson[listBox1.SelectedIndex].lastname;
bool success = search.Contains(textBox6.Text);

或者,如果您想比较这些值:

bool success = (search == textBox6.Text);
于 2013-02-06T05:12:48.317 回答
0

你可以在一个字符串中 foreach char

string s = "Blippy you";
        foreach (char item in s)
        {

        }

但是任何人。尝试使用 Text.RegularExpressions 进行字符串匹配。

于 2013-02-06T04:59:08.983 回答
-1
private void button1_Click(object sender, System.EventArgs e)
{
    if (listBox1.FindString("Your String in Textbox 6") != -1)
     {
        MessageBox.Show("Success!");
     }
}
于 2016-09-12T19:11:48.357 回答