【问题标题】:searching items in listbox using uppercase and lowercase使用大写和小写搜索列表框中的项目
【发布时间】:2014-03-09 11:54:59
【问题描述】:

美好的一天,我创建了一个列表框,其中包含一个项目列表,我可以在文本框中搜索它并将其传输到另一个列表框中。我编写了这段代码,它成功了。

private void textBox1_TextChanged(object sender, EventArgs e)
{
    listBox1.SelectedItems.Clear();

    for (i = 0; i < listBox1.Items.Count; i++)
    {
        if (listBox1.Items[i].ToString().Contains(textBox1.Text))
        {
            listBox1.SetSelected(i, true);
        }
    }
}

private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    System.Text.StringBuilder sb = new System.Text.StringBuilder();
    foreach (object item in listBox1.Items)
    {
        sb.Append(item.ToString());
        sb.Append(" ");
    }
    possibleresult rslt = new possibleresult();
    listBox2.Items.Clear();
    foreach (int i in listBox1.SelectedIndices)
    {
        listBox2.Visible = true;
        listBox2.Items.Add(listBox1.Items[i].ToString());
    }      
}

现在我想搜索一个可以读取小写字母或大写字母的项目。 我研究了一些使用大写和小写的代码,但老实说我不知道​​该怎么做。
先生,您能帮我解决这个问题吗?

【问题讨论】:

    标签: c# search visual-studio-2008 textbox listbox


    【解决方案1】:

    解决方案:您可以将这两个值转换为大写或小写,然后进行比较。

    试试这个:

    listBox1.Items[i].ToString().ToLower().Contains(textBox1.Text.ToLower())
    

    listBox1.Items[i].ToString().ToUpper().Contains(textBox1.Text.ToUpper())
    

    【讨论】:

    • Tnx 先生现在它可以工作了.. 我想我必须为大写或小写创建一个类。这就是我在研究中读到的内容
    • @SpideyEudzAragon:不客气 :),很高兴能帮助你。
    【解决方案2】:

    试试这个:

     private void textBox1_TextChanged(object sender, EventArgs e)
            {
    
                listBox1.SelectedItems.Clear();
    
                for (i = 0; i < listBox1.Items.Count; i++)
                {
                    if (string.Equals(listBox1.Items[i].ToString(), textBox1.Text, StringComparison.CurrentCultureIgnoreCase))
                    {
                        listBox1.SetSelected(i, true);
                    }
                }
    
            }
    

    【讨论】:

      【解决方案3】:

      如果您想将所有项目转换为小写或大写,请尝试此操作 - 100% 有效

      小写

      For Each item As String In ListBox1.Items
                  ListBox2.Items.Add(item.ToString.ToLower)
              Next
      

      大写

      For Each item As String In ListBox1.Items
                  ListBox2.Items.Add(item.ToString.ToUpper)
              Next
      

      【讨论】:

        猜你喜欢
        • 2017-09-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-26
        • 1970-01-01
        • 2023-03-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多