根据Enum检查ReadKey
本文关键字:ReadKey 检查 Enum 根据 | 更新日期: 2023-09-27 18:03:24
我有这个枚举用于所有四种可能的箭头键
enum Direction{up=ConsoleKey.UpArrow, left=Consolekey.LeftArrow,...};
private ConsoleKeyInfo userSelect;
private bool mQuit;
然后是
public void getUserInput()
{
userSelect = Console.ReadKey()
if (userSelect.Key == ConsoleKey.Escape)
{
mQuit = true;
}
else if(userSelect.Key == "check if key press is value in enumeration")
{
//implementation
}
}
不知道检查"如果Key press是enum中的值之一"的代码是什么什么好主意吗?
else if(Enum.IsDefined(typeof(Direction), userSelect.Key)) {
//Logic
}
可以使用强制转换来解决这个问题。
if (userSelect.Key == (ConsoleKey)myEnum)
{
}