Настройка
groupBox1.ForeColor
изменяет основной цвет других элементов управления, таких как кнопка, метка и т. Д., Находящихся внутри группового блока, что в большинстве случаев нежелательно, если вам нужно только изменить цвет текста группового блока. Простой обходной путь будет
private void button1_Click(object sender, EventArgs e)
{
List<Color> lstColour = new List<Color>();
foreach (Control c in groupBox1.Controls)
lstColour.Add(c.ForeColor);
groupBox1.ForeColor = Color.Red; //the colour you prefer for the text
int index = 0;
foreach (Control c in groupBox1.Controls)
{
c.ForeColor = lstColour[index];
index++;
}
}
Конечно, приведенный выше код может быть бессмысленным, если вы позже добавляете элементы управления программно в групповую коробку, но хорошо, что вы можете справляться со всеми этими ситуациями, добавляя в код дополнительные условия. Чтобы быть вдвойне уверенным, можно использовать список ключевых значений пары контроля и переднего цвета.