Of course it will do that since you have
Code:
Dim i = rowCount - 1
Which is the index of the last row on the DGV. If you want to add a new row, just do this
Code:
 Private Sub loadData(ByVal fileLocation As String)
        Dim fileName = GetFileNameWithoutExtension(fileLocation)
        Dim outputLocation = System.IO.Path.GetDirectoryName(fileLocation)
        Dim good = True
        Files.Rows.Add(Nothing, fileLocation, outputLocation, fileName)
End Sub
And BTW, what's the purpose of declaring the boolean variable good if you're not using it anywhere?