Public Class Form1 Private WithEvents dgv As DataGridView Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load dgv = New DataGridView() With {.Dock = DockStyle.Fill} dgv.AllowUserToAddRows = False dgv.ColumnCount = 2 Controls.Add(dgv) dgv.Rows.Add(1, "file1.txt") dgv.Rows.Add(2, "file10.txt") dgv.Rows.Add(3, "file2.txt") dgv.Rows.Add(4, "file3.txt") End Sub Private Sub dgv_SortCompare(sender As Object, e As DataGridViewSortCompareEventArgs) Handles dgv.SortCompare If e.Column.Index = 1 Then e.SortResult = StrCmpLogicalW(e.CellValue1, e.CellValue2) e.Handled = True Else e.Handled = False End If End Sub Private Declare Unicode Function StrCmpLogicalW Lib "shlwapi" (x As String, y As String) As Integer End Class