将枚举类型转换为IList

Dr *_* TJ 1 c# ienumerable ilist menu

嗨
我怎么能转换enum为IList?
假设您要读取FormWindowState枚举中的所有元素,并返回IList<FormWindowState>包含Normal,Minimized和Maximized

Jon*_*eet 8

使用Enum.GetValues().例如:

var list = (IList<FormWindowState>) Enum.GetValues(typeof(FormWindowState));
Run Code Online (Sandbox Code Playgroud)

它实际上返回了一个FormWindowState[]但IList<T>无论如何都适当地实现了.

如果您正在使用枚举进行大量工作并且想要更加类型安全的方法,那么您也可以查看我的Unconstrained Melody项目.