i confirmed to code in this block of text is causing the issue

all code from user control



Code:
    Dim Dragging As Boolean
    Dim HiddenFolders As String


    Public Sub GotFoldersAndTemplates(ByVal InD As String)

        On Error GoTo 1000

        TreeView.Nodes.Clear()

        Dim a As Integer
        Dim b As Integer
        Dim ST() As String


        Dim D As String




        D = GetXMLElement("FOLDERS", InD)

        ST = Split(D, "<FOLDER>")

        Dim GotOne As Boolean
        Dim LeftOneBehind As Boolean

10:

        GotOne = False
        LeftOneBehind = False

        Dim ID As String
        Dim Fname As String
        Dim Active As String
        Dim Parent As String
        Dim tType As String
        Dim tExpander As String


        HiddenFolders = Chr(1)
        Dim NODDE() As TreeNode

        For a = 1 To UBound(ST)

            If ST(a) <> "" Then

                ID = GetXMLElement("ID", ST(a))
                Fname = unXMLit(GetXMLElement("NAME", ST(a)))
                Active = GetXMLElement("ACTIVE", ST(a))
                Parent = GetXMLElement("PARENT", ST(a))


                If Active = "F" Then

                    HiddenFolders = HiddenFolders & ID & Chr(1)
                End If


                If Parent = "0" Then
                    TreeView.Nodes.Add("FOLDER" & Active & ID, Fname)
                    ST(a) = ""
                    GotOne = True
                Else


                    NODDE = TreeView.Nodes.Find("FOLDER" & Parent, True)

                    If UBound(NODDE) = 0 Then

                        NODDE(0).Nodes.Add("FOLDER" & ID, Fname)
                        ST(a) = ""
                        GotOne = True

                    Else

                        TreeView.Nodes.Add("FOLDER" & ID, Fname)
                        ST(a) = ""
                        GotOne = True

                    End If


                End If


            End If


        Next

        If LeftOneBehind = True Then

            If GotOne = False Then
                Beep()
            End If

        End If



        D = GetXMLElement("TEMPLATES", InD)

        ST = Split(D, "<TEMPLATE>")


        For a = 1 To UBound(ST)

            If ST(a) <> "" Then

                ID = GetXMLElement("ID", ST(a))
                Fname = unXMLit(GetXMLElement("NAME", ST(a)))
                ' Active = GetXMLElement("ACTIVE", ST(a))
                Parent = GetXMLElement("FOLDER", ST(a))
                tType = GetXMLElement("TYPE", ST(a))
                tExpander = GetXMLElement("EXPANDER", ST(a))




                If tType <> "SCRIPT" Then

                    NODDE = TreeView.Nodes.Find("FOLDER" & Parent, True)

                    If UBound(NODDE) = 0 Then



                        If tExpander = "Y" Then

                            NODDE(0).Nodes.Add("FOLDEREXPANDER" & ID, Fname)

                            NODDE = TreeView.Nodes.Find("FOLDEREXPANDER" & ID, True)
                            Dim C As Integer

                            For C = 1 To 50
                                NODDE(0).Nodes.Add("TEMPLATEEXPANDER" & ID & "-" & C, "Expander - " & C)
                            Next

                        Else


                            NODDE(0).Nodes.Add("TEMPLATE" & ID, Fname)

                        End If



                    End If

                End If

            End If

        Next








        Exit Sub
1000:
        MsgBox(Err.Description)


    End Sub


    Private Sub ctlTemplates_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load


        ImageList1.Images.Add("FOLDER", Image.FromFile("c:\HATMOS-CG\Icons\FOLDER.ico"))
        ImageList1.Images.Add("CG", Image.FromFile("c:\HATMOS-CG\Icons\FSCG.ico"))
        ImageList1.Images.Add("NO", Image.FromFile("c:\HATMOS-CG\Icons\NO.ico"))



    End Sub

    Private Sub TreeView_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView.AfterSelect

    End Sub



    Private Sub TreeView_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TreeView.MouseDown


        Dim selectedTreeview As TreeView = CType(sender, TreeView)


        If e.Button = Windows.Forms.MouseButtons.Right Or 1 = 1 Then


            'As the mouse moves over nodes, provide feedback to 
            'the user by highlighting the node that is the 
            'current drop target

            '  Dim pt As Point = _
            ' CType(sender, TreeView).PointToClient(New Point(e.X, e.Y))



            '   Dim pt As Point = selectedTreeview.PointToClient(New Point(e.X, e.Y))

            Dim targetNode As TreeNode = selectedTreeview.GetNodeAt(e.X, e.Y)

            selectedTreeview.SelectedNode = targetNode

        End If



        If selectedTreeview.SelectedNode Is Nothing Then Exit Sub



        If e.Button = Windows.Forms.MouseButtons.Right Then

            '            Me.MENU1.Show(selectedTreeview, New Point(e.X, e.Y))

        End If


    End Sub

    Private Sub TreeView_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TreeView.MouseMove
        On Error GoTo 1000

        If e.Button <> Windows.Forms.MouseButtons.Left Then
            Dragging = False
            Exit Sub
        End If

        If Dragging = True Then Exit Sub

        If TreeView.SelectedNode.Name.StartsWith("FOLDER") Then Exit Sub

        TreeView.DoDragDrop(vbCrLf & "[<mos><itemID>2</itemID><mosID>HATMOS.CG</mosID><mosAbstract>" & TreeView.SelectedNode.Text & "</mosAbstract><objID>CG</objID><objDur>1</objDur><objTB></objTB><abstract>NewsChannel Branding \Branding Off</abstract><itemEdStart></itemEdStart><mosExternalMetadata><mosScope>STORY</mosScope><CGDATA>NewsChannel Branding\Branding Off</CGDATA><modBY><mod><usr>AWORMSER</usr><time>2003-07-15T11:29:37</time><cpu>WESH-917000060</cpu></mod></modBY></mosExternalMetadata><itemSlug>MOS Commands-2</itemSlug></mos>]" & vbCrLf, DragDropEffects.Copy)


        Exit Sub
1000:




    End Sub


    Private Sub TreeView_AfterSelect_1(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView.AfterSelect

    End Sub


    Private Sub TreeView_DrawNode(ByVal sender As Object, ByVal e As System.Windows.Forms.DrawTreeNodeEventArgs) Handles TreeView.DrawNode

        If e.Node.Index < 0 Then Exit Sub
        If e.Bounds.X < 5 Then Exit Sub


        Dim Ftemplate As New Font("Arial", 10, FontStyle.Regular)
        Dim FtemplateH As New Font("Arial", 11, FontStyle.Bold)
        Dim Ffolder As New Font("Arial", 12, FontStyle.Bold)

        Dim Phighlight As New Pen(Color.Blue, 2)



        e.Graphics.FillRectangle(Brushes.White, e.Bounds.X, e.Bounds.Y, e.Bounds.Width, e.Bounds.Width)


        If e.Node.Name.StartsWith("FOLDER") Then

            e.Graphics.DrawImage(ImageList1.Images.Item(0), e.Bounds.X + 5, e.Bounds.Y + 3)
            e.Graphics.DrawString(e.Node.Text, Ffolder, Brushes.Black, e.Bounds.X + 25, e.Bounds.Y + 3)


            If e.Node.IsSelected Then

                e.Graphics.DrawRectangle(Phighlight, e.Bounds.X, e.Bounds.Y + 3, e.Graphics.MeasureString(e.Node.Text, Ffolder).Width + 25 + 2, e.Bounds.Height - 4)

            End If


        Else





            If e.Node.IsSelected Then
                e.Graphics.FillRectangle(Brushes.Blue, e.Bounds.X + 24, e.Bounds.Y + 3, e.Graphics.MeasureString(e.Node.Text, FtemplateH).Width, e.Bounds.Height - 5)
                e.Graphics.DrawString(e.Node.Text, FtemplateH, Brushes.White, e.Bounds.X + 25, e.Bounds.Y + 3)

            Else
                e.Graphics.DrawString(e.Node.Text, Ftemplate, Brushes.Black, e.Bounds.X + 25, e.Bounds.Y + 3)
            End If


            e.Graphics.DrawImage(ImageList1.Images.Item(1), e.Bounds.X + 5, e.Bounds.Y + 4)


        End If







    End Sub