VVoVe: arghhh....
c'e' un cincinino di confusione nel codice .
Poi non so se lo hai riportato preciso preciso. Cmq, ad es.
foreach (DataRow _dr in DataTable.Row)
e' sbagliato. Nel codice che hai riportato non vedo nessun oggetto (di tipo datatable) chiamato DataTable. Perdipiu', anche se ci fosse non sarebbe una grande idea chiamare una istanza di tipo DataTable con lo stesso nome del suo tipo (es. DataTable appunto). In piu', la collection di datarow della classe DataTable si chiama Rows e non Row. Quindi
codice:
foreach (DataRow _dr in unatuadatatable.Rows)
andrebbe gia meglio. Che cosa restituisce
Access.visRecord4(sql);
?
Perche' dopo aver assegnato il risultato della funzione alla datalist non chiami subito il suo databind?