Bind your data to a BindingSource and bind that to your grid. You can then associate a BindingNavigator with the BindingSource if desired, plus it supports sorting and filtering. This assumes that the underlying data source supports sorting or filtering, so it must be an IBindingList or an IBindingListView, e.g. a DataView. When you bind a DataTable the data comes from from its DefaultView, which is a DataView.