2016-08-24 76 views
3

我有两个例子如何在我的代码的这部分中放置一个变量?

Primary.Teal800, Primary.Teal900, Primary.Teal500, Accent.LightGreen400, TextShade.WHITE 

Convert.ToInt32(textBox.Text) 

.后,我想要一个变量的一部分。例如,对于这个伪代码将是

var color = "Teal"; 
Primary.color + 800, Primary.color + 900, Primary.color + 500, Accent.LightGreen400, TextShade.WHITE 

var toWhich = "ToInt32"; 
Convert.toWhich(textBox.Text) 

会不会有什么方法可以做到这一点?

我访问一个枚举

+3

什么是第一个例子吗?阵列?枚举? – Sinatr

+0

@Sinatr我使用这个代码https://github.com/IgnaceMaes/MaterialSkin – Dgameman1

+0

这个问题并不清楚。你是否说你想用上面的组合创建一个新的颜色变量? –

回答

4

由于Primaryenum,您可以使用Enum.Parse。为此做出一个辅助方法:

static Primary GetPrimaryColor(string name, int number) { 
    return (Primary)Enum.Parse(typeof(Primary), name+number); 
} 

调用助手可以让你做到这一点:

var color = "Teal"; 
GetPrimaryColor(color, 800), GetPrimaryColor(color, 900), ... 
+2

@Sayse我在OP的评论中关注了github的链接,并找到[此文件](https://github.com/IgnaceMaes/MaterialSkin/blob/b130c6e8ba38143d8e5c890cf86dc83252959bb4/MaterialSkin/ColorScheme.cs)。 – dasblinkenlight

+0

圣。你真棒。 – Dgameman1

+1

@Sayse从元数据中看到[this](http://i.stack.imgur.com/jvl9a.png)。 –

相关问题