17

给定以下枚举:

Enum enumExample
  world
  oblivion
  holiday
End Enum

我可以将其值添加到 ComboBox 项目列表中,如下所示:

combo.Items.Add(enumExample.holiday)
combo.Items.Add(enumExample.oblivion)
combo.Items.Add(enumExample.world)

有没有更短的方法?

4

2 回答 2

21

您可以使用Enum.GetValues获取枚举值的列表,然后迭代结果:

For Each i In  [Enum].GetValues(GetType(EnumExample))
  combo.Items.Add(i)
Next

或者,正如@Styxxy 提到的:

combo.Items.AddRange([Enum].GetValues(GetType(EnumExample)))
于 2013-01-19T21:48:44.350 回答
14

为什么不直接使用:

Enum enumExample
  world
  oblivion
  holiday
End Enum

ComboBox1.DataSource = [Enum].GetValues(GetType(enumExample))

这是我用过的,它似乎奏效了。

于 2014-11-07T17:19:50.873 回答