ho visto una cosa
xche nella sub FillDataGrid usi un DataReader e non un Dataset

se non sbaglio il DataReader e di solo lettura...

ciao