Bueno, lo que te puedo decir son como yo lo hago y me funciona. La primera es como lo hiciste antes, es decir colocando los datos en un datarow del tipo del datatable que creaste y luego agregarlo como una nueva fila al datatable con indice 0 porque es el unico en el dataset (segun mostraste en tu codigo):
fila = dtabla1.NewRow
fila("Folio") = "250"
fila("id") = "120100"
fila("Articulo") = "Chocolate Bambino"
fila("Cantidad") = "2"
fila("Valor") = "50"
dtabla1.Rows.Add(fila)
dats.Tables(0).rows.add(fila)
La segunda opcion es a traves de un arreglo, como en el siguiente codigo lo muestro:
Dim campos(4) as New Object
campos(0)="250"
campos(1)="120100"
campos(2)="Chocolate Bambino"
campos(3)="2"
campos(4)="50"
dats.Tables(0).BeginLoadData
dats.Tables(0).LoadDataRow(campos,False)
dats.Tables(0).EndLoadData
Espero que te sirvan.
Saludos.