2017-10-17 8 views
1

を見つける私は単純なクラスを作った:この質問のためにコンボボックスの項目

Public Class ListBoxEntry 
    Public Property ID As Integer 
    Public Property Text As String 

    Public Overrides Function ToString() As String 
     Return Text 
    End Function 
End Class 

私は、このクラスのいくつかのインスタンスを作成し、コンボボックスにそれらを追加します。

... 
While DR.Read 
    LI = New ListBoxEntry 
    LI.ID = DR("ID") ' ID is an integer value 
    LI.Text = DR(Feldname) ' Feldname is a string 
    cmbList.Items.Add(LI) 
End While 

私はのための作業コードを取得することはできませんコードでコンボボックスを特定の値に設定します。 など。これらは私の3つのエントリー(ID - 名字)です:

1 - One (value 1, shown text in combobox "One") 
2 - Two (value 2, shown text in combobox "Two") 
3 - Three (value 3, shown text in combobox "Three") 

Combobox1.SelectedIndex = somehow(2) <- here I want to set the combobox to the second entry (2), so "two" is selected 

私は必要なコードはどれですか?

+0

あなたはどんな命名規則を使うこともできますが、その型名に 'cls'という接頭辞が必要なのはなぜですか?そのようなプレフィックスを持たない.NET Frameworkのクラスを常に使用しているので、正確に何が役立つのでしょうか? – jmcilhinney

+0

私は知っている - 私はこの質問のためだけにclsのものを追加し、それが助けると思った。私は再びそれをしません。ヒントをありがとう –

+0

'Class'キーワードが宣言のクラス名の直前にあるとすれば、それは役に立たない。宣言がなくても、一般的に、ほとんどの型はクラスであると仮定しているため、構造体が何かを指摘する必要があります。とにかく問題になることはしばしばありますが、状況によっては重大な問題になることがあります。 – jmcilhinney

答えて

2

クラスのインスタンスを配列またはコレクションに追加してから、ComboBoxにバインドする必要があります。

With ComboBox1 
    .DisplayMember = "Text" 
    .ValueMember = "ID" 
    .DataSource = myList 
End With 

あなたは、そのIDで項目を選択するComboBoxSelectedValueプロパティにID値を割り当てることができ、例えば

ComboBox.SelectedValue = 2 

これは、コントロールに「2」と表示されます。

関連する問題