C#将Enum枚举映射到文本字符串
2012-09-29 11:14
375 查看
演示程序下载地址:
【北方 网通】 【电信或网通】
源程序下载地址:
【北方网通】 【电信网通】
点击这里查看原文地址
【下载说明】
1 点击上面的地址,打开下载页面
2 点击"普通下载"--等待30秒--点击"下载"按钮--保存
为了在代码中读取描述字符串,你可以如下这么做:
如果没有下面的using语句,你的代码是不能通过编译的。
【更多阅读】
[译]用C#检测你的打印机是否连接
[原]使用Excel的VBA来读取和修改bmp位图像素数据
[译]C# DirectShow编程手册及实例
[原]IT6633P V0.19 数据手册、设计电路图、程序源代码
[原]C#读取CSDN博客的文章名称及地址
[原]Baidu:C#利用百度来搜索网页、图片、视频等等
[译]在.NET中使用DirectShow
[译]将C++代码转换为HTML
[译]在C# .NET2.0实现单实例应用程序
[译]在C#中使用J#运行时来压缩与解压缩
【北方 网通】 【电信或网通】
源程序下载地址:
【北方网通】 【电信网通】
点击这里查看原文地址
【下载说明】
1 点击上面的地址,打开下载页面
2 点击"普通下载"--等待30秒--点击"下载"按钮--保存
介绍
当将以前的C代码移植到C#中时,我快发疯了,因为有很多的数组需要将常量映射到字符串。当我在寻找一个C#的方法来完成的时候,我发现了一个自定义属性和映射的方法。如何使用代码?
对每一个enum枚举都添加一个Description属性:private enum MyColors
{
[Description("yuk!")] LightGreen = 0x012020,
[Description("nice :-)")] VeryDeepPink = 0x123456,
[Description("so what")] InvisibleGray = 0x456730,
[Description("no comment")] DeepestRed = 0xfafafa,
[Description("I give up")] PitchBlack = 0xffffff,
}
为了在代码中读取描述字符串,你可以如下这么做:
public static string GetDescription(Enum value)
{
FieldInfo fi= value.GetType().GetField(value.ToString());
DescriptionAttribute[] attributes =
(DescriptionAttribute[])fi.GetCustomAttributes(
typeof(DescriptionAttribute), false);
return (attributes.Length>0)?attributes[0].Description:value.ToString();
}
如果没有下面的using语句,你的代码是不能通过编译的。
using System.ComponentModel;
using System.Reflection;
好处
代替代码中大量的常量和数组,上面的解决方法保持了预定义和描述在一起,并阅读性也很强。历史
我仅仅是一个偶然的机会才发现原来FrameWork框架还提供一个DescriptionAttribute类的。当我第一次用我自己定义的属性时,发生了一些冲突,因为我引入了ComponentModel命名空间。【更多阅读】
[译]用C#检测你的打印机是否连接
[原]使用Excel的VBA来读取和修改bmp位图像素数据
[译]C# DirectShow编程手册及实例
[原]IT6633P V0.19 数据手册、设计电路图、程序源代码
[原]C#读取CSDN博客的文章名称及地址
[原]Baidu:C#利用百度来搜索网页、图片、视频等等
[译]在.NET中使用DirectShow
[译]将C++代码转换为HTML
[译]在C# .NET2.0实现单实例应用程序
[译]在C#中使用J#运行时来压缩与解压缩
相关文章推荐
- C#将Enum枚举映射到文本字符串
- C# 枚举类型转换字符串 Enum to string,枚举转换为下拉菜单 Enum DropDownList
- C# - 将enum类型映射到字符串上
- c# Enum 枚举 转 list 再转 json 字符串
- C# 枚举类型转换字符串 Enum to string,枚举转换为下拉菜单 Enum DropDownList
- C#枚举和字符串以及整型数之间的转换
- C#中的枚举类型enum用法
- C#的Enum——枚举
- C# Enum GetValues 将枚举转为Array
- C#enum枚举
- C# Enum枚举转 Dictionary字典
- C#随机获得字符串组成帐号和密码并插入到数据库,将插入成功的数据计入文本
- C#点点滴滴:枚举enum
- C# String 类型 转为 Enum 枚举类型
- c# 枚举返回字符串操作
- c#枚举(Enum)的用法及遍历方法
- C# 枚举、字符串、值的相互转换
- C# 枚举(Enum ) 应用总结
- C#的Enum——枚举
- C# Enum枚举转 Dictionary字典