Click here to Skip to main content
11,411,840 members (56,139 online)
Click here to Skip to main content

Adding custom skins for Forms in VB.Net

, 12 Jun 2008 CPOL
Rate this:
Please Sign up or sign in to vote.
Custom skins for VB.NET forms, Skinning VB.NET forms, WinForm Skins


In this project I have created an User control which can be used in Windows Form applications in VB.NET. Using this control you can add a New look to your Forms. I wont say this as a perfect code and method for adding skins, But there may be other ways which are better than this. I believe this as a simple way for adding skins to Win Forms.
Download - 218.2 KB


I was searching for some free skinner control to add for my Project. But I didnt find anything. Finally I got a small clue in a website to create skins. Thanks for that author. This control is fully made of panel controls. And I created the images for this skin in Photoshop. May or may not similar codes are available in the Code Project. Feel free to contact me for any suggestions about this control. You can get any help from me through e-mail.

Using the code

No special coding is needed for using this control. Just add the control in your Toolbox by Right clicking on the toolbox and selecting Choose Items and then Skinner.dll from the location you have stored. After this the Control is ready to use and you can drag and drop the control in the form to use this control. The Caption for the skinned form is read from the Form's text property. The icon is also taken from the icon which is set to the original form. The form's background is set to Transparent by using the Transparency key property. This will be set by the Skinner control. The following line shows this

 Me.ParentForm.TransparencyKey = System.Drawing.Color.FromArgb(121, 121, 121)

Remember to set the Language of your code snippet using the Language dropdown.


This is the predecessor version for my Skin controls in VB.NET. 6 April 2008. You can expect for the updated version soon with lots of improvements and almost all functionalities of a form like changing the position of form by dragging the title bar.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Ferminus Muthu
Technical Lead Endeavour Software Technologies
India India
I am working as a Technical Lead in Bangalore. I started my development career using VB 6.0. I was interested in creating windows based applications. Later I worked on web based applications with ASP.Net. Now I am working in WCF web services for Iphone and Ipad applications.

Comments and Discussions

GeneralMy vote of 5 Pinmemberjohnylee1920-Jan-14 7:44 
GeneralRe: My vote of 5 PinmemberDeJunk7-May-14 18:57 
QuestionI like this Pinmemberconejo801-Sep-13 18:50 
QuestionProblem with form as MDI container!!!.....don't work! Pinmemberrobyzurieta6-Jun-13 3:27 
QuestionThanks PinmemberMuslim Bahdili11-Apr-13 19:54 
GeneralMy vote of 5 PinmemberJack_32115-May-12 2:21 
GeneralMy vote of 5 PinmemberCJ736-Mar-12 19:11 
GeneralMy vote of 5 Pinmembermanoj kumar choubey20-Feb-12 0:24 
GeneralMy vote of 3 PinmemberSwelihle31-Aug-11 0:15 
QuestionExcellent idea Pinmemberjlkdaslkfjd22-Aug-11 1:36 
Generalform skinning PinmemberTeddyW18-Jun-11 1:02 
GeneralGreat article my friend! It helped me at.. PinmemberTheRomanian18-Apr-11 5:17 
GeneralHelp Pinmembersteve02113-Apr-11 6:20 
GeneralWhatsthishelpbutton PinmemberMember 324988420-Sep-10 3:44 
GeneralMy vote of 5 PinmemberFreshbrew28-Aug-10 1:34 
GeneralProblem with window state at runtime Pinmemberusha gupta19-Jul-10 3:47 
GeneralC# version and Thanks a Ton... PinmemberMember 469050514-Feb-10 10:36 
Hi, First of all,,Great idea.Just like web-application.. Smile | :)
C# Code.

public partial class FormSkin : UserControl
            int bit;
            Point p1 = default(Point);
            Point p2 = default(Point);
            public FormSkin()

            private void FormSkin_Load(object sender, EventArgs e)
                  this.ParentForm.FormBorderStyle = FormBorderStyle.None;
                  this.Dock = DockStyle.Fill;
                  this.ParentForm.TransparencyKey = System.Drawing.Color.FromArgb(121, 121, 121);
                  this.label1.Text = this.ParentForm.Text;

            private void FormSkin_Paint(object sender, PaintEventArgs e)

            private void panel5_MouseMove(object sender, MouseEventArgs e)
                  if (bit == 1)
                     this.ParentForm.Location = new Point(this.ParentForm.Location.X + (e.Location.X - p2.X), this.ParentForm.Location.Y (e.Location.Y - p2.Y));


            private void panel5_MouseUp(object sender, MouseEventArgs e)
                  bit = 0;

            private void panel5_MouseDown(object sender, MouseEventArgs e)
                  bit = 1;
                  p1 = this.ParentForm.Location;
                  p2 = e.Location;

            private void pictureBox5_Click(object sender, EventArgs e)

            private void pictureBox6_Click(object sender, EventArgs e)
                  Form f1 = this.ParentForm.MdiParent;
GeneralRe: C# version and Thanks a Ton... PinmemberFerminus Muthu7-Mar-10 23:39 
GeneralRe: C# version and Thanks a Ton... PinmemberPriya Billava30-Mar-10 19:57 
GeneralSomething More Challenging... PinmemberJoshua Eiland13-Feb-10 20:37 
GeneralRe: Something More Challenging... PinmemberFerminus Muthu7-Mar-10 23:38 
GeneralMy vote of 1 Pinmemberseinkraft24-Jan-10 6:32 
Generalhi..... gr8 stuff PinmemberArunabh Nag22-Jul-09 13:30 
GeneralGreat start..... PinmemberDJ Matthews17-Jul-09 10:49 
QuestionHow did you make it?? Pinmembervietnam_boi_967-Jul-09 14:34 
Generalthanks Pinmemberagdeniz17-May-09 21:47 
GeneralMy vote of 1 PinmvpDave Kreskowiak30-Jan-09 11:07 
GeneralForm Stretch problem PinmemberMember 369554613-Jan-09 21:01 
GeneralRe: Form Stretch problem Pinmemberawparso25-Oct-11 12:17 
Generalsugestion Pinmemberrio_p7-Nov-08 4:43 
GeneralRe: sugestion PinmemberArmando Airo'14-Nov-08 9:11 
GeneralRe: sugestion Pinmemberwolf9s28-Jul-11 1:18 
GeneralFlickering Problem! Pinmemberfarizvi17-Jul-08 21:49 
GeneralBug still there! Pinmembersjcardinale12-Jun-08 11:37 
GeneralBug corrected PinmemberFerminus Muthu12-Jun-08 2:44 
GeneralRe: Bug corrected PinmemberSelvin12-Jun-08 3:18 
GeneralRe: Bug corrected Pinmembermscdex12-Jun-08 7:04 
GeneralRe: Bug corrected Pinmemberwolf9s28-Jul-11 1:21 
General[Message Removed] PinmemberMojtaba Vali25-May-08 1:50 
GeneralSmall bug PinmemberSelvin21-May-08 5:30 
Generalcool PinmemberAbhijit Jana10-May-08 0:45 
GeneralMoving the skinned form PinmemberKong Ragge7-May-08 0:58 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web04 | 2.8.150414.5 | Last Updated 12 Jun 2008
Article Copyright 2008 by Ferminus Muthu
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid