web-dev-qa-db-ja.com

C#のコンボボックスで値でアイテムを見つけるにはどうすればよいですか?

C#には、a型の変数stringがあります。

どうすればfind itemacomboboxの値で(コンボボックスの表示テキストのない値を持つアイテムを見つけたい)。

15
Duy Khanh

次のコードを使用して見つけることができます。

int index = comboBox1.Items.IndexOf(a);

アイテム自体を取得するには、次のように記述します。

comboBox1.Items[index];
26
st mnmn

FindStringExact()のコンボボックスコントロールにメソッドが表示されます。このメソッドは、ディスプレイメンバーを検索し、見つかった場合はそのアイテムのインデックスを返します。見つからない場合は-1を返します。

//to select the item if found: 
mycombobox.SelectedIndex = mycombobox.FindStringExact("Combo"); 

//to test if the item exists: 
int i = mycombobox.FindStringExact("Combo"); 
if(i >= 0)
{
  //exists
}
10
Andrew Mulvaine

こんにちはGuysは、テキストまたは値の検索が

int Selected;    
int count = ComboBox1.Items.Count;
    for (int i = 0; (i<= (count - 1)); i++) 
     {        
         ComboBox1.SelectedIndex = i;
        if ((string)(ComboBox1.SelectedValue) == "SearchValue") 
        {
            Selected = i;
        }

    }

    ComboBox1.SelectedIndex = Selected;
0
Teezy7

私のソリューションは非常にシンプルで面白いことを知っていますが、トレーニングする前にそれを使用しました。重要:コンボボックスのDropDownStyleは「DropDownList」でなければなりません!

最初にコンボボックスで、次に:

bool foundit = false;
String mystr = "item_1";
mycombobox.Text = mystr;
if (mycombobox.SelectedText == mystr) // Or using mycombobox.Text
    foundit = true;
else foundit = false;

それは私のために正しく機能し、私の問題を解決しました...しかし、@ st-mnmnからの方法(解決策)はより良くて素晴らしいです。

0
user3290286