By default, the DataType
for the new column is string
.
Specify the correct data-type for the columns when you add them:
Dim dt As New DataTable
dt.Columns.Add("Name", GetType(String))
dt.Columns.Add("Full Name", GetType(String))
dt.Columns.Add("Parent", GetType(String))
dt.Columns.Add("Exists", GetType(Boolean))
dt.Columns.Add("Root", GetType(String))
dt.Columns.Add("Extension", GetType(String))
dt.Columns.Add("Creation Time", GetType(DateTime))
dt.Columns.Add("Creation Time Utc", GetType(DateTime))
dt.Columns.Add("LastAccess Time", GetType(DateTime))
dt.Columns.Add("LastAccess Time Utc", GetType(DateTime))
dt.Columns.Add("Last Write Time", GetType(DateTime))
dt.Columns.Add("Last WriteTime Utc", GetType(DateTime))
dt.Columns.Add("Attributes", GetType(System.IO.FileAttributes))
dt.Columns.Add("Length", GetType(Long))
dt.Columns.Add("IsReadOnly", GetType(Boolean))
Your format string should then work as expected.