C#: What’s with Enums anyways?
Well, I’ll tell you. You can define your own strings with Enums using reflection. You can also use the type-safe-enum pattern if reflection seems slow to you. And do you know you can use Enums to represent bit flags?
Associating Enums with strings in C# shows you how to define your own strings with Enums using reflection. For type-safe-enum pattern implementation, check it out here. The ins and outs of C# enums shows you how to use Enums to represent bit flags.