如何通过C#中的字符串中的名称找到文本框控件?

Sol*_*man 2 c# for-loop

请考虑以下代码段:

 protected void displayGannt()
        {
            TextBoxT0.BackColor = getColour(time.moments[0]);
            TextBoxT1.BackColor = getColour(time.moments[1]);
            TextBoxT2.BackColor = getColour(time.moments[2]);
            TextBoxT3.BackColor = getColour(time.moments[3]);
            TextBoxT4.BackColor = getColour(time.moments[4]);
            TextBoxT5.BackColor = getColour(time.moments[5]);
            TextBoxT6.BackColor = getColour(time.moments[6]);
Run Code Online (Sandbox Code Playgroud)

是否有任何可想到的方法将这段代码放入带有计数器的for循环中,而不必写出一百万行代码?是否有任何c#宏可以在某种for循环中完成这项工作?我当然不能想办法.感谢您的回答.

TGH*_*TGH 5

var i = 0;
foreach(var txt in this.Controls.OfType<TextBox>().OrderBy(t => t.Id))
{
   txt.BackColor = getColour(time.moments[i]);
   i++;
}
Run Code Online (Sandbox Code Playgroud)

试试以上