Plotting Vertex arrays in OpenTK

I currently have a vertex array of Vector3’s and I am trying to get them to plot on screen The array grows by around 256 points every second but as I redraw my OpenGL screen the array I get huge data gaps on screen and when I look at the array all of the data is there.
Code is below

I am using OpenTK in VB.net

Sructure of my data


    Structure VERTEX
        Public position As Vector3
        Public colour As Vector4
   End Structure

I have a for loop in the sub as well and it is doing the same thing.


    Public Sub drawGLWindow(glcontrol As GLControl, camera As Camera, PointList As List(Of BEAMLAYOUT), boundries As LoadedBoundries)
        VERTEXSizeinBytes = Vector3.SizeInBytes + Vector4.SizeInBytes
        GL.Clear(ClearBufferMask.ColorBufferBit)
        GL.Clear(ClearBufferMask.DepthBufferBit)
        Dim perspective As Matrix4 = Matrix4.CreatePerspectiveFieldOfView(1.0, (glcontrol.Width / glcontrol.Height), 5, 5000)
        GL.MatrixMode(MatrixMode.Projection)
        GL.LoadIdentity()
        GL.LoadMatrix(perspective)
        'Load Camera
        GL.MatrixMode(MatrixMode.Modelview)
        GL.LoadIdentity()
        Dim lookat As Matrix4
        With camera
            lookat = Matrix4.LookAt(.eye.X, .eye.Y, .eye.Z, .target.X, .target.Y, .target.Z, .up.X, .up.Y, .up.Z)
        End With
        GL.LoadMatrix(lookat)
        'Enable correct Z Drawings
        GL.Enable(EnableCap.DepthTest)
        'Enable correct Z Drawings
        GL.DepthFunc(DepthFunction.Less)
        GL.Viewport(0, 0, glcontrol.Width, glcontrol.Height) 'Size of window

        GL.Begin(PrimitiveType.Points)
        GL.Color3(Color.Red)
        GL.PointSize(22)
        GL.Begin(PrimitiveType.Points)
        GL.Vertex3(0, 0, 0)
        GL.End()


        GL.PointSize(3)
        If gdblSurveyPoints Is Nothing Then Exit Sub

        'For i = 0 To gdblSurveyPoints.Count - 1
        '    Dim colour As Color = ColourChooser(gdblSurveyPoints(i).Y)
        '    GL.Begin(PrimitiveType.Points)
        '    GL.Color3(colour)
        '    GL.Vertex3(gdblSurveyPoints(i))
        '    GL.End()
        'Next


        Try
            If gvctSurveyVerticies Is Nothing Then Exit Sub
            VBO = GL.GenBuffer()
            GL.BindBuffer(BufferTarget.ArrayBuffer, VBO)
            GL.EnableClientState(ArrayCap.VertexArray)
            GL.EnableClientState(ArrayCap.ColorArray)
            GL.BufferData(BufferTarget.ArrayBuffer,
                         (VERTEXSizeinBytes * gvctSurveyVerticies.Length),
                         gvctSurveyVerticies,
                         BufferUsageHint.StaticDraw)
            GL.VertexPointer(3, VertexPointerType.Float, VERTEXSizeinBytes, 0)
            GL.ColorPointer(4, ColorPointerType.Float, VERTEXSizeinBytes, Vector3.SizeInBytes)
            GL.DrawArrays(PrimitiveType.Points, 0, gvctSurveyVerticies.Length)
        Catch ex As Exception

        End Try

        Dim lineXStart As Single = 1000000
        Dim lineXStop As Single = -1000000
        Dim lineZStart As Single = 1000000
        Dim lineZStop As Single = -1000000
        GL.Begin(PrimitiveType.Lines)
        GL.LineWidth(1)
        GL.Color3(Color.LightGray)
        Dim intSpacing As Integer = -1000000
        Do While intSpacing < 1000000
            GL.Color3(Color.LightGray)
            GL.Vertex3(intSpacing, 0, lineXStart)
            GL.Vertex3(intSpacing, 0, lineXStop)
            GL.Color3(Color.Yellow)
            GL.Vertex3(lineZStart, 0, intSpacing)
            GL.Vertex3(lineZStop, 0, intSpacing)
            intSpacing += 100
        Loop

        GL.End()

        OpenTK.Graphics.GraphicsContext.CurrentContext.SwapInterval = True 
        glcontrol.SwapBuffers() 'Takes from the 'GL' and puts into control
    End Sub

Are you adding too much in your intSpacing variable with each loop iteration?
Jeff