C# 访问动态字符串

C# 访问动态字符串,c#,.net,C#,.net,我在for中,我想访问Class.Constants。这些常量变量的顺序类似于常量.X1、常量.X2 我想在我的表单中访问这些常量 for (i = 1; i = 10; i++) { int a = Constants.X + i; int b = Constants.X + "20"; } 这能做到吗?是的,这是可能的 创建一个包含常量的类 namespace MyNameSpace{ public class Constants{ public c

我在for中,我想访问Class.Constants。这些常量变量的顺序类似于常量.X1、常量.X2

我想在我的表单中访问这些常量

for (i = 1; i = 10; i++)
{
  int a  = Constants.X + i;
  int b = Constants.X + "20";
}
这能做到吗?

是的,这是可能的

创建一个包含常量的类

namespace MyNameSpace{
     public class Constants{
          public const int x1 = 1;
          public const int x2 = 2;
     }
}
如果两个类都位于同一命名空间内,则可以直接使用该类来获取常量。否则,只需使用名称空间来使用Constants类

public class myTestClass{
     for(var i = 0; i < 10; i++){
          int a = MyNameSpace.Constants.x1 + i;
          int b = MyNameSpace.Constants.x2 + i;
     }
}
公共类myTestClass{
对于(变量i=0;i<10;i++){
int a=MyNameSpace.Constants.x1+i;
int b=MyNameSpace.Constants.x2+i;
}
}

不,你不能那样做。使用数组存储常量,然后您可以像
constants.X[i]
一样访问它们。这主意不错,谢谢。是的,反射也可以。我想你不明白我的意思。对不起。你能详细说明你的问题吗?我想在字符串处连接,而不是在这个值处。看看这个例子:常量。“X1”或常量。X+“1”很抱歉误解了这个问题。我认为你想要的是不可能的。