La datagrid accetta solamente oggetti implementabili iList, quindi o un arrayList o una DataTable o altro.
Popola con un Loop una datatable con i record trovati dal dataReader e poi passagliela come dataSource ...
Io personalmente creo classi personalizzate e popolo un ArrayList con detta classe, poi lo passo al binder ...