1

私はwinformsアプリケーションに取り組んでいます。データベースからバインドするコンボボックスがあり、各アイテムには名前と値があります:

 //New item class
 public class themeS
 {
     public string Name { get; set; }
     public string Value { get; set; }
     public override string ToString() { return this.Name; }
 }

 //Binding ComboBox Event
 using (DbEntities db = new DbEntities())
 {
    comboBox2.Items.Clear();
    IEnumerable tem  = from t in db.Themes where t.idCategorie == 1  select t;
    foreach (Themes Tem in tem)
    {
        comboBox2.Items.Add(new themeS { Value = Tem.idTheme.ToString(), Name= Tem.nomTheme });
    }
 }

ここで、コンボボックスの選択された項目の値を取得したいと思います:

string curentIdTem = comboBox2.SelectedValue.ToString();

の戻り値comboBox2.SelectedValueは常に 'NULL' です。誰か助けてください。

4

3 に答える 3

1

使用するSelectedValue場合はValueMemberComboBox

例:

   comboBox1.ValueMember = "Value";
   .....

   int value = (int)comboBox2.SelectedValue;
于 2013-05-27T04:39:12.350 に答える
1

themeS機能しないクラスにクラスをキャストしてintいます。

クラスのプロパティにint値が必要な場合。ValuethemeS

次に、次の方法で取得できます。Int32.TryParse

    int currentItem = 0;
    Int32.TryParse(((themeS)comboBox2.SelectedValue).Value, out     currentItem);
于 2013-05-27T04:29:56.770 に答える