vb点虐 中枚举的用法 枚举类型valueof

VB.NET的枚举求教解决方法

这个功能实现起来其实也很简单,就是通过反射去读取 DescriptionAttribute 的 Description 属性的值,代码如下所示:

创新互联公司长期为上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为杜尔伯特企业提供专业的成都网站设计、网站建设、外贸网站建设杜尔伯特网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。

/// summary

/// 返回枚举项的描述信息。

/// /summary

/// param name="value"要获取描述信息的枚举项。/param

/// returns枚举想的描述信息。/returns

public static string GetDescription(Enum value)

{

Type enumType = value.GetType();

// 获取枚举常数名称。

string name = Enum.GetName(enumType, value);

if (name != null)

{

// 获取枚举字段。

FieldInfo fieldInfo = enumType.GetField(name);

if (fieldInfo != null)

{

// 获取描述的属性。

DescriptionAttribute attr = Attribute.GetCustomAttribute(fieldInfo,

typeof(DescriptionAttribute), false) as DescriptionAttribute;

if (attr != null)

{

return attr.Description;

}

}

}

return null;

}

这段代码还是很容易看懂的,这里取得枚举常数的名称使用的是 Enum.GetName() 而不是 ToString(),因为前者更快,而且对于不是枚举常数的值会返回 null,不用进行额外的反射。

当然,这段代码仅是一个简单的示例,接下来会进行更详细的分析。

VB点虐 如何枚举字符串?

Enum Week

周日 = 0

周一 = 1

周二 = 2

周三 = 3

周四 = 4

周五 = 5

周六 = 6

End Enum

Sub Main()

Dim myType As Type = GetType(Week)

MsgBox(Week.GetName(myType, Week.周二))

End Sub

vb点虐 中如何调用枚举中的字符串

没有办法直接取枚举名,只能根据枚举值,自己赋值

Private Enum duihuaA As Integer

第一个

第二个

第三个

第四个

第五个

第六个

第七个

第八个

End Enum

调用:

Select case X

case duihuaA.第一个

Return "第一个"

case duihuaA.第二个

Return "第二个"

..............

新闻标题:vb点虐 中枚举的用法 枚举类型valueof
文章分享:https://www.cdcxhl.com/article40/ddjihho.html

成都网站建设公司_创新互联,为您提供营销型网站建设标签优化全网营销推广自适应网站企业建站关键词优化

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都app开发公司