즐겁게 개발을...

개발보다 게임이 더 많이 올라오는 것 같은...

개발/C#

폼에 모든 라벨의 ForeColor 변경하기

다물칸 2023. 6. 27. 16:42
728x90
반응형

기존 폼 라벨에 ForeColor(전경색=폰트색)을 변경할 필요가 있었다. 디자이너에서 한땀 한땀 선택해가며 바꿔도 되고, 디자이너 소스에서 ForeColor를 모조리 변경하는 방법도 있을 수 있지만, 코드 레벨에서 하는 방법을 알아보자. 

 

private void ChangeForeColorControls(ControlCollection CtrlCollection)
{
    foreach (Control Ctrl in CtrlCollection)
    {
        // 이 콘트롤에 하위 콘트롤이 있으면 재귀함수로 호출
        if (Ctrl.Controls.Count > 0)
        {
            ChangeForeColorControls(Ctrl.Controls);
        }

        // 콘트롤 타입이 Label이면 처리 (이 부분을 응용하면 다른 컨트롤도 적용가능하다.)
        if (Ctrl.GetType() == typeof(Label))
        {
            Ctrl.ForeColor = Color.Black;
        }
    }
}

끝!!

반응형