无法将字符串转换为我创建的枚举类型
我有一个枚举:
public enum Color
{
Red,
Blue,
Green,
}
现在,如果我从 XML 文件中将这些颜色作为文字字符串读取,如何将其转换为枚举类型 Color。
class TestClass
{
public Color testColor = Color.Red;
}
现在,当使用像这样的文字字符串设置该属性时,我收到编译器发出的非常严厉的警告。 :D 无法从字符串转换为颜色。
有什么帮助吗?
TestClass.testColor = collectionofstrings[23].ConvertToColor?????;
I have an enum:
public enum Color
{
Red,
Blue,
Green,
}
Now if I read those colors as literal strings from an XML file, how can I convert it to the enum type Color.
class TestClass
{
public Color testColor = Color.Red;
}
Now when setting that attribute by using a literal string like so, I get a very harsh warning from the compiler. :D Can't convert from string to Color.
Any help?
TestClass.testColor = collectionofstrings[23].ConvertToColor?????;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您正在寻找这样的东西吗?
Is something like this what you're looking for?
尝试:
请参阅有关 Enum 的文档
<编辑:在 .NET 4.0 中,您可以使用一种更类型安全的方法(也是一种在解析失败时不会引发异常的方法):
Try:
See documentation about Enum
Edit: in .NET 4.0 you can use a more type-safe method (and also one that doesn't throw exceptions when parsing fails):
您需要使用 Enum.Parse 将字符串转换为正确的 Color 枚举值:
You need to use Enum.Parse to convert your string to the correct Color enum value:
正如其他人所说:
如果您因
collectionofstrings
是对象集合而遇到问题,请尝试以下操作:As everyone else has said:
If you're having an issue because the
collectionofstrings
is a collection of objects, then try this: