본문 바로가기
개발언어/C#.NET

C# 윈폼 컨트롤 BackColor 투명처리

by 엔돌슨 2009. 12. 3.
반응형

C# 컨트롤 투명처리하기

윈폼에서 배경을 넣고 컨트롤을 올리게 되면 투명하지 않아서 문제가 생긴다.
이때는 알파값을 이용하여 폼위에 컨트롤들을 모두 투명하게 처리하면된다.


< 투명처리전 >





< 투명처리후 >


C# 컨트롤 투명처리하기


// 폼로드시 해당 함수호출
        private void WorkUnitSeting_Load(object sender, EventArgs e)
        {
            //배경이 있는 컨트롤 투명처리
            SetCtlsArgb();
        }

        /// <summary>
        /// 배경이 있는 컨트롤 투명처리
        /// </summary>
        private void SetCtlsArgb()
        {
            Control.ControlCollection coll = this.Controls;
            foreach (Control c in coll)
            {
                if (c != null)
                {
                    // CheckBox , Lable인 컨트롤의 경우 투명하게 처리합니다.
                    if (c.GetType() == typeof(CheckBox) || c.GetType() == typeof(Label))
                    {
                        c.BackColor = Color.FromArgb(0, 0, 0, 0);
                    }

                }

            }
        }