KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have a flags enum defined like this: [Flags] public enum MyEnum { None = 0x00, Choice1 = 0x01, Choice2 = 0x02, Choice3 = 0x04, Default = Choice1 | Choice2, All = Default | Choice3 } I would like a way to print out which flags are included in MyEnum.Default . In this case, I'd want the output to be something like "Choice1, Choice2". The problem with simply printing MyEnum.Default.ToString() is that the output would be "Default" when I want "Choice1, Choice2". Here's one option, but if I used this I'd have to update the printing every time I changed the enum. ((StudyData.Choice1 & StudyData.Default) == StudyData.Choice1 ? StudyData.Choice1.ToString() : "") + ", " + ((StudyData.Choice2 & StudyData.Default) == StudyData.Choice2 ? StudyData.Choice2.ToString() : "") + ", " + ((StudyData.Choice3 & StudyData.Default) == StudyData.Choice3 ? StudyData.Choice3.ToString() : "") Does anyone have a cleaner way of doing this? Ideally, I'd like a way of printing out the flags included in MyEnum.Default without having to change the printing code every time I added a new flag or changed the default. Thanks!
Tags (comma-separated)
Save Edits
Cancel