嗨
,我怎样才能转换enum
为IList
?
假设您要读取FormWindowState
枚举中的所有元素,并返回一个IList<FormWindowState>
包含Normal
,Minimized
和Maximized
问问题
1999 次
2 回答
8
使用Enum.GetValues()
. 例如:
var list = (IList<FormWindowState>) Enum.GetValues(typeof(FormWindowState));
它实际上返回 aFormWindowState[]
但是IList<T>
无论如何都可以适当地实现。
如果您正在使用枚举进行大量工作并且想要一种更安全的方法,您可能还想查看我的Unconstrained Melody项目。
于 2010-11-09T07:30:46.657 回答
0
IList<FormWindowState> myList;//instantiate it with a concrete collection.
myList.Add(FormWindowsState.Normal);
myList.Add(FormWindowsState.Minimized);
myList.Add(FormWindowsState.Maximized);
这仅适用于这种情况,当您只有 3 个枚举成员时。否则使用 Jon Skeet 的解决方案。
于 2010-11-09T07:32:05.923 回答