As programmers know, you cannot change the Treeview Background Color manually in the options but i've found a good way of doing it in Runtime First of all create a new project and add a treeview control. To do this you need to goto the menu Project > Components and look for Microsoft Windows Common Controls, select it and adds more controls to your toolbox. Once thats done we can add some code For the general declarations, put the following Option Explicit 'Needed to make sure declared strings etc work Private Declare Function SendMessage Lib "User32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Long) As Long 'Used to set the following tweak Private Declare Function GetWindowLong Lib "User32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long 'Get treeview handle Private Declare Function SetWindowLong Lib "User32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long 'Set handle Private Const GWL_STYLE = -16& 'The current style of treeview Private Const TVM_SETBKCOLOR = 4381& 'Set Bground Color Private Const TVM_GETBKCOLOR = 4383& "Get Bground Color Private Const TVS_HASLINES = 2& 'Misc stuff needed Dim frmlastForm As Form 'The form using Now the Form on Load Event Private Sub Form_Load() Dim nodX As Node 'Creates nodX as the default Node Set nodX = TreeView1.Nodes.Add(, , "R", "Default Plugins") 'Cut all this out of a prog i doing currently :P Set nodX = TreeView1.Nodes.Add("R", tvwChild, "DP1", "Bios") Set nodX = TreeView1.Nodes.Add("R", tvwChild, "DP2", "Video") Set nodX = TreeView1.Nodes.Add("R", tvwChild, "DP3", "Sound") Set nodX = TreeView1.Nodes.Add("R", tvwChild, "DP4", "CD/DVD") Set nodX = TreeView1.Nodes.Add("R", tvwChild, "DP5", "Controllers") nodX.EnsureVisible ' Make sure it visible TreeView1.Style = tvwTreelinesText ' Style 4. TreeView1.BorderStyle = vbFixedSingle ChangeTreeviewColor 'This will be eventually the event to change the color :) End Sub Now we have to make a lil event called ChangeTreeViewColor Private Sub ChangeTreeviewColor() Dim lngStyle As Long 'Explained further on Call SendMessage(TreeView1.hWnd, TVM_SETBKCOLOR, 0, ByVal RGB(216, 228, 248)) 'Sends a message setting the color defined in the RGB(x,x,x) color value lngStyle = GetWindowLong(TreeView1.hWnd, GWL_STYLE) 'lngStyle will have the init handle of treeview control Call SetWindowLong(TreeView1.hWnd, GWL_STYLE, lngStyle - TVS_HASLINES) 'Sets handle Call SetWindowLong(TreeView1.hWnd, GWL_STYLE, lngStyle) 'Sets handle End Sub To make sure it works, call the ChangeTreeviewColor event during the FormLoad event which has already been done Questions, Abuse etc welcome