Я сделал программу, которая включает в себя множество элементов управления. Элементы управления будут отображаться и скрываться в соответствии с выбором пользователя. Это означает, что элементы управления перекрывают друг друга во время разработки. теперь я хочу изменить передний и задний цвет всех элементов управления во время разработки. но мне так сложно выполнить эту задачу, потому что все элементы управления накладываются друг на друга. поэтому я решил создать метод цикла for, чтобы перебирать элементы управления в форме, а затем проверять каждый элемент управления по очереди, есть ли в нем элементы управления. когда в элементе управления также есть элементы управления, я вызываю тот же метод и передаю ему элемент управления, чтобы также изменить свойства для подэлементов управления. Метод такой:
void setColor(ref Control con)
{
con.BackColor= System.Drawing.Color.Black;
con.ForeColor=System.Drawing.Color.Yellow;
if (con.Controls.Count > 0) { setColor(ref con); }
}
поэтому моя форма включает tabControl с несколькими tabPages. Я повторяю tabPages и хотел передать его этому методу, но получаю ошибку «Индексатор не может быть передан как параметр out или ref». Я передаю его так: setColor(ref tabControl1.Controls[i]);
не могли бы вы помочь мне решить эту проблему?