如何在XNA ContentReader中使用枚举?

时间:2009-02-16 01:27:25

标签: c# visual-studio-2008 .net-3.5 xna

例如,我正在考虑替换它:

var.StringAttribute = input.ReadString();

有这样的事情:

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

然而,这不起作用完全正确。关于如何获取输入以读取自定义枚举的想法?

1 个答案:

答案 0 :(得分:1)

ReadExternalReference读取外部文件的链接 - 这不是您想要做的。

如果我理解正确,你想要读一个字符串,并parse将其作为枚举。

试试这个:

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

请注意,这将适用于两个数字(枚举的基础类型范围内的任何内容 - 通常为Int32)和字符串值,但会为无效值引发异常。