C# 在循环中按名称访问动态对象
我是c#的新手,也是一名php/js/html开发人员。 我有8个开关名为继电器1、继电器2、继电器3等 我需要能够改变这些的状态,但我想通过一个for循环来实现,所以这个数字是动态的。 我试过各种方法,但都没有用。 任何帮助都将不胜感激。 这是我想要的(不正确)C# 在循环中按名称访问动态对象,c#,loops,C#,Loops,我是c#的新手,也是一名php/js/html开发人员。 我有8个开关名为继电器1、继电器2、继电器3等 我需要能够改变这些的状态,但我想通过一个for循环来实现,所以这个数字是动态的。 我试过各种方法,但都没有用。 任何帮助都将不胜感激。 这是我想要的(不正确) for(int i=0;i
for(int i=0;i<8;i++)
{
继电器检查为真;
}
您不能动态生成变量的名称,但可以创建中继
对象数组(下面的所有中继
变量),并在循环中执行操作,如下所示:
var allRelays = new {relay_0, relay_1, relay_2, relay_3, relay_4, relay_5, relay_6, relay_7, relay_8};
foreach (var relay in allRelays) {
relay.IsChecked = true;
}
您不能动态生成变量的名称,但可以创建
relay
对象数组(下面的allRelays
变量),并在循环中执行操作,如下所示:
var allRelays = new {relay_0, relay_1, relay_2, relay_3, relay_4, relay_5, relay_6, relay_7, relay_8};
foreach (var relay in allRelays) {
relay.IsChecked = true;
}
你不想这样做,你想学习集合类型。相信我,每个初学者都认为他们想要这样做,但这只是因为他们不理解集合(数组、列表等)。忘记php、js和html。C#是强类型(严肃的)语言。你需要学习OOP,如上所述,你正在寻找一个列表或集合。你不想这样做,你想学习集合类型。相信我,每个初学者都认为他们想要这个,但这只是因为他们不理解集合(数组、列表等)。忘记php、js和html。C#是一个强类型(严肃的)语言。你需要学习OOP,如上所述,你正在寻找一个列表或集合。