使用循环更改特性

本文关键字:循环 | 更新日期: 2023-09-27 18:26:37

我有10个标签和一个具有10个属性的对象。我想有一个循环,在第一个标签上放对象的第一个属性,在第二个标签上写对象的第二个属性,以此类推。

我的问题是用循环更改对象的属性Name,因为它不是字符串。。。

_Label1.Fill = object .Color1;     
_Label2.Fill = object .Color2;    
_Label3.Fill = object .Color3; 

使用循环更改特性

您可以通过这样的反射来实现这一点:

for(int i= 1; i<= 10; i++)
{
     Label[i-1].Fill = (Color)object.GetType().GetProperty("Color" + i.ToString()).GetValue(object, null);
}

我假设,您在数组或列表中有标签,并且Color Properties的类型为Color