在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
枚举是一个指定的常数,其基础类型可以是除 Char 外的任何整型。 範例一: enum Days { Saturday=1, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday }; enum Colors { Red = 1, Green = 2, Blue = 4, Yellow = 8 }; Colors myColors = Colors.Red; string strColor=myColors.tostring(); int IntColor=(int)myColors ; //位或 Colors myColors = Colors.Red | Colors.Blue | Colors.Yellow; //位与 Colors myColors = Colors.Red & Colors.Blue & Colors.Yellow; //遍历 foreach (string s in Enum.GetNames(typeof(Days))) Response.Write(s + "--" + Enum.Parse(typeof(Days), s).ToString()); //转换 Colors mc=Colors Enum.Parse(typeof(Colors ), "red"); if (System.Enum.IsDefined(typeof(Days), "Monday")) Days ds= (Days)Enum.Parse(typeof(Days), "Monday"); 範例二: public enum NoticeType { Notice = 'A', LabRule = 'H', HotInformation = 'N', Column = 'C', All = '1', Null = '0' } //新建枚举类型 NoticeType noticeType1 = NoticeType.Column; //把枚举类型转换为string d="Column" string d = noticeType1.ToString(); //取得枚举类型的基数 dd='C' char dd = (char)noticeType1; //通过基数取得对应的枚举类型 noticeType2 = NoticeType.Notice //(NoticeType)'A'; 两种方式都可以 NoticeType noticeType2 = (NoticeType)Char.Parse("A"); //通过名称取得枚举类型 noticeType3 = NoticeType.Notice NoticeType noticeType3 = (NoticeType)Enum.Parse(typeof(NoticeType), "Notice");
获得文字描述: using System.ComponentModel; // 先添加该引用 enum Direction { [Description("this means facing to UP (Negtive Y)")] UP = 1, [Description("this means facing to RIGHT (Positive X)")] RIGHT = 2, [Description("this means facing to DOWN (Positive Y)")] DOWN = 3, [Description("this means facing to LEFT (Negtive X)")] LEFT = 4 }; //使用如下方法来获得文字描述: using System.Reflection; using System.ComponentModel; public static String GetEnumDesc(Direction e) { FieldInfo EnumInfo = e.GetType().GetField(e.ToString()); DescriptionAttribute[] EnumAttributes = (DescriptionAttribute[]) EnumInfo. GetCustomAttributes (typeof(DescriptionAttribute), false); if (EnumAttributes.Length > 0) { return EnumAttributes[0].Description; } return e.ToString(); } |
请发表评论