Как использовать перечисление в XNA ContentReader? - PullRequest
0 голосов
/ 16 февраля 2009

Например, я думал о замене этого:

var.StringAttribute = input.ReadString();

Что-то вроде этого:

var.EnumAttribute = input.ReadExternalReference<EnumName>();

Однако это не работает вполне верно. И идеи о том, как получить ввод для чтения пользовательского перечисления?

1 Ответ

1 голос
/ 16 февраля 2009

ReadExternalReference Считывает ссылку на внешний файл - это не то, что вы хотите сделать.

Если я вас правильно понимаю, вы хотите прочитать строку и разобрать как перечисление.

Попробуйте это:

string value = input.ReadString();
var.EnumAttribute = Enum.Parse(typeof(EnumName), value);

Обратите внимание, что это будет работать как для чисел (что-либо в пределах диапазона базового типа перечисления - обычно Int32), так и для строковых значений, но вызовет исключение для недействительных значений.

...