문제

내 시스템에서 그룹 상자의 캡션은 항상 진한 파란색입니다. 이를 어떻게 변경합니까?

에 대한 답변 그룹 상자의 테두리 색상을 어떻게 변경합니까? 캡션과 테두리 그리기를 무시할 수 있는 방법을 보여 주지만 시각적 스타일과 둥근 모서리 그리기 등을 처리하고 싶지 않습니다.

도움이 되었습니까?

해결책

ForeColor는 그룹 상자의 텍스트 색상을 제어하는 ​​속성입니다.

다른 팁

이것은 트릭을 수행해야합니다.

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

예측 색상을 원하는 색상으로 설정하고 플랫 스타일을 표준으로 설정하여 캡션 색상을 설정할 수 있습니다.

플랫 스타일이 시스템이거나 표준이고 전망대가 기본값에서 변경되지 않은 경우 캡션 색상이 XP 테마에 지정된 색상으로 설정됩니다.

위의 것은 나를 도와주지 않았다.
솔루션을 찾았습니다 여기 GroupBox.header 태그를 추가하여 :

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

델파이에서는 적어도 캡션은 글꼴 색상 일뿐입니다. 부모님이 거짓인지 확인하고 싶습니다. 그러나 질문에 태그를 지정했기 때문에 전혀 유용하지 않을 수 있습니다.

환경

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

물론 나중에 그룹 상자에 프로그래밍 방식으로 컨트롤을 추가하는 경우 위의 코드는 의미가 없을 수 있지만 좋은 점은 코드에 추가 조건을 추가하여 모든 상황을 처리할 수 있다는 것입니다.확실하게 하기 위해 제어 및 전경색의 키값 쌍 목록을 사용할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top