Вопрос

В моей системе заголовок группового поля всегда темно-синего цвета, как мне это изменить?

Ответ на Как изменить цвет границы группового поля? показывает, как я могу переопределить рисование подписи и границы, но я не хочу иметь дело с визуальными стилями, рисованием закругленных углов и тому подобным.

Это было полезно?

Решение

ForeColor - это свойство, которое управляет цветом текста в групповом поле.

Другие советы

Это должно сработать:

public Form1()
{
  InitializeComponent();
  GroupBoxRenderer.RenderMatchingApplicationState = false;
  groupBox1.ForeColor = Color.Green;
}

Кажется, я могу установить цвет подписи, установив ForeColor на нужный мне цвет и установив FlatStyle на Standard.

Если FlatStyle является системным или стандартным, а цвет заголовка не изменен по сравнению с цветом по умолчанию, то цвет подписи устанавливается на цвет, указанный в теме XP.

Вышесказанное мне не помогло.
Я нашел решение здесь добавив тег GroupBox.Заголовок:

<GroupBox>
  <GroupBox.Header>
      <TextBlock Text="Header" Foreground="Black"/>
  </GroupBox.Header>
</GroupBox>

По крайней мере, в Delphi заголовок - это просто цвет шрифта, вы хотите убедиться, что parentfont имеет значение false .Но это может быть вам совсем не полезно, поскольку вы пометили свой вопрос .net

Настройка

groupBox1.ForeColor

изменяет предварительный цвет других элементов управления, таких как кнопка, метка и т.д., Находящихся внутри groupbox, что в большинстве случаев нежелательно, если вам нужно только изменить цвет текста groupbox.Простым обходным путем будет

    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++;
        }
    }

Конечно, приведенный выше код может быть бессмысленным, если вы добавляете элементы управления программно позже в groupbox, но хорошо то, что вы можете справиться со всеми этими ситуациями, добавив дополнительные условия в коде.Чтобы быть вдвойне уверенным, можно использовать список keyvaluepair of control и forecolor.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top