【发布时间】:2014-01-03 16:35:40
【问题描述】:
我重写了这个问题,因为不是每个人都理解。希望没关系,这是同样的主要问题。非常抱歉
我有一个带有 15 个进度条的 winform,名为:“baraClasa1”、“baraClasa2”、“baraClasa3”...“baraClasa15”。我必须从一些数据库记录中将 .VALUE 属性(如 int)分配给所有这些属性。 (记录访问不同时间段的不同值) 我在想也许可以通过执行以下操作来使用循环将 .Value 属性分配给所有这些属性:
for(int i=0; i<value; i++)
{
"baraClasa+i".Value = 20 + i;
}
是否可以这样组合变量的名称?
我对字典和列表了解不多,但我正在研究。如果没有任何效果,我只会做丑陋的事情:
int value = 20;
baraClasa1 = value;
baraClasa2 = value +1;....
感谢大家的帮助
【问题讨论】:
-
我不认为 c# 可以创建动态变量,最好的办法是使用集合或数组。
-
除非
variable实际上是一个数组或其他索引集合,那么[]是没有意义的。 -
重新思考您的设计。数组是要走的路。变量名完全是为了给开发者一个关于变量用途的提示。程序逻辑不应依赖于变量名。
-
字典会让你接近相同的结果。调用元素将是
dict["variableName"]msdn.microsoft.com/en-us/library/xfhwa508(v=vs.110).aspx -
@FelixCastor:虽然知道在这种情况下
"variableName"实际上(至少不是自动)不是变量名。
标签: c# winforms loops variables