Вы можете преобразовать строку в член перечисления, используя Enum.Parse
или Enum.TryParse
.
К сожалению, API не является универсальным, поэтому вам необходимоукажите тип несколько раз:
ConsoleKey key1 = (ConsoleKey)Enum.Parse(typeof(ConsoleKey), "UpArrow");
Выше приведено исключение, если строка не является членом перечисления.Для защиты от этого вы можете использовать:
if (Enum.TryParse("UpArrow", out ConsoleKey key2))
{
// use 'key2' in here
}