2011-06-30 22 views
1

私はComboboxに栄養補給したい列挙値を持っています。ComboBox内の列挙値

Enum SortType 
    Id 
    FirstName 
    LastName 
End Enum 

私はコンボボックスで設定できるいくつかの文字列をその列挙に関連付けたいと思います。 àla "Id"、 "First Name"、 "Last Name"のように入力します。

どうすればよいですか? Advancedの

、私は、最終的には、文字列のことを国際化することができるはずです。(「ID」、「ノム」、「Prénom」)

が実は、私はList(Of String) = new List("Id", "First Name", "Last Name")を持っており、列挙型にそのリストのインデックスを関連付けます値。列挙型の値を追加または削除する必要があるときに、インデックスを再関連付けする必要があるため、これはちょっと恥ずかしいことです。私は通常、このコードを使用してC#では

+0

見てください:http://stackoverflow.com/questions/424366/c-string-enumsいくつかのアプローチ(C#)があります。 –

答えて

2

How to Bind Enum Types to the Dropdown

私はこのコードが実行されると思う:

Friend Enum Speed 
    Low = 1 
    Medium = 2 
    High = 3 
End Enum 

Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) 
    DropDownList1.DataSource = System.Enum.GetValues(GetType(Speed)) 
    DropDownList1.DataBind() 


End Sub 
+0

+1。私は通常、CamelCaseの単語の間にスペースを入れるために少しコードを追加します。 (FirstName - > "First Name") – StriplingWarrior

+0

私は意図的に列挙型コード名とGUIプレゼンテーション名が異なる可能性があることを確認するために2単語の列挙型名を含めました。国際化のために何も言わないでください... – serhio