[ dava @ 12.03.2009. 13:59 ] @
Kako da podesim GroupBox kontrolu da bude transparentna, ali da ne prikazuje boju forme nego sliku koja se nalazi iza nje?
[ Igor Gajic @ 12.03.2009. 15:19 ] @
Moraces da umesto obicnog GroupBox-a koristis nasledjenu kontrolu.

Code:

    class MyGroupBox : GroupBox
    {
        public MyGroupBox()
        {
            SetStyle(ControlStyles.Opaque, true);
            BackColor = Color.Transparent;

        }
        protected override CreateParams CreateParams
        {
            get
            {
                CreateParams cp = base.CreateParams;
                cp.ExStyle |= 0x20;
                return cp;
            }
        }
    }
[ dava @ 13.03.2009. 09:40 ] @
Hvala na ovom kodu, radi.
Probao sam na ovaj isti nacin da napravim klase i za RadioButton i Label-e, u dizajneru njih instanciram, ali ne dobijem ocekivani rezultat. RadioButtons i labele se nalaze na transparentnom GroupBox-u.
Kako bih mogao ovo izvesti.
[ Igor Gajic @ 13.03.2009. 19:21 ] @
Transparentni Label:

Code:

    class MyLabel : Control
    {
        protected override void OnPaintBackground(PaintEventArgs e)
        {
        }

        private bool Iscrtaj = false;

        protected override void OnPaint(PaintEventArgs e)
        {
            if (!Iscrtaj)
            {
                Iscrtaj = true;

                this.Visible = false;
                this.Parent.Invalidate(this.Bounds);
                this.Parent.Update();
                this.Visible = true;
                return;
            }
            else
            {
                Iscrtaj = false;
                e.Graphics.DrawString(this.Text, this.Font, new SolidBrush(this.ForeColor),1,1);
                e.Graphics.Dispose();
            }
        }
    }



E ali RadioButton je daleko tezi za napraviti.... Ako ti ne smeta stavi text obicnog RadioButton -a na prazan string i stavi MyLabel pored njega i dobijes utisak providnosti, osim oko kruga (ako ti sve ovo ne smeta).

Ako smeta , e onda moraces da napravis svoj RadioButton.