假设我有一个包含 10 个事件的enum
调用,其值为 10001 - 10010 。我想使用输入值(例如 10007)来检查枚举中的成员是否具有相应的值。一旦找到具有相应输入值的事件,我就会获取该事件并通过连接一个委托向它注册一个方法(假设我拥有所有必要的代码)。我只需要知道枚举中的成员是否具有与输入值相同的值,然后为该事件注册一个新方法。如何仅使用输入值查找某个事件?我猜一个或任何其他循环不是我最好的选择。eEventID
mEvent1 - mEvent10
int
for-loop
编辑:这是我到目前为止...
public delegate void EventDel(int mEvtIdx);
public enum eVtEvtId
{
Event1,
Event2,
Event3,
Event4,
Event5,
Event6,
Event7,
Event8,
Event9,
Event10,
}
public void Subscribe(int mInVal)
{
eVtEvtID mEventID;
int mEventIndex = mInVal;
if(Enum.IsDefined(typeof(mEventID), mEventIndex))
{
mEventID += EventDelegate([insert method here])
}
else
{
// will warn the user that the event does
// not yet exist in the enum
}
}