如何列出枚举成员 [英] How to list Enum's members
本文介绍了如何列出枚举成员的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
Public Enum TestEnum As int32
First = 0
Second = 2
第三= 4
第四= 6
结束枚举
通过以下代码列出TestEnum的所有成员,但失败:
公共类Form1
私有子Button1_Click(sender As System.Object,e As System.EventArgs)处理Button1.Click
Dim Enum1 As TestEnum
Dim Members()As String
成员= System.Enum.GetNames(CType(Enum1,System.Enum))
End Sub
结束类
所以,我的问题是:如何列出枚举成员?
更新:解决方案是:
公共类Form1
Private Sub Button1_Click(sender As System.Object ,e As System.EventArgs)Handles Button1.Click
Dim Members()As String
Members = System.Enum.GetNames(GetType(TestEnum))
MessageBox.Show(Join(Members,Chr(13)& Chr(10)))
End Sub
结束类
解决方案
你需要传递一个类型而不是一个值,方法。
成员= System.Enum.GetNames(GetType(TestEnum))
如果您有一个枚举的实例你也可以使用
Members = System.Enum.GetNames(Enum1.GetType())
尽管如果您知道所需的类型,我会推荐第一种方法。
How to list Enum's members in code? I have following Enum:
Public Enum TestEnum As int32
First = 0
Second = 2
Third = 4
Fourth = 6
End Enum
And I try to list all members of TestEnum via following code but it failed:
Public Class Form1
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim Enum1 As TestEnum
Dim Members() As String
Members = System.Enum.GetNames(CType(Enum1, System.Enum))
End Sub
End Class
So, my question is: How to list members of a Enum?
Update: The solution is:
Public Class Form1
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim Members() As String
Members = System.Enum.GetNames(GetType(TestEnum))
MessageBox.Show(Join(Members, Chr(13) & Chr(10)))
End Sub
End Class
解决方案
You need to pass a type, not a value, to the method.
Members = System.Enum.GetNames(GetType(TestEnum))
If you have an instance of your enum you can also use
Members = System.Enum.GetNames(Enum1.GetType())
Though I would recommend the first approach if you know the type you want.
这篇关于如何列出枚举成员的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文