2014-02-11 63 views
0

好日子,我做了一個列表框,其中包含一個項目列表,我可以在文本框中搜索它並將它轉移到另一個列表框中。我做了這個代碼,它工作。使用大寫和小寫在列表框中搜索項目

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()); 
    }  
} 

現在我想搜索一個可以讀取小寫字母或大寫字母的項目。 我使用UpperCase和LowerCase研究了一些代碼,但老實說我不知道​​該怎麼做。
你能幫我解決這個問題嗎?

回答

1

解決方案:您可以將這兩個值都轉換爲大寫或小寫,然後執行比較。

試試這個:

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

OR

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

TNX先生現在它的工作原理.. 我想我必須做出一個類上或小寫。 多數民衆贊成多說,我讀過我的研究 –

+0

@SpideyEudzAragon:歡迎您:),我很高興幫助你。 –

0

試試這個:

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); 
       } 
      } 

     } 
相關問題