iT>Попробуйте делать в параллельном потоке Fill в отсоединенный от контролов DataSet, а потом в основном потоке подключать его к гриду или куда там вы его подключаете.
В BindingSource перед этим зануляю DataSource, DataMember; выполняю Fill в другом потоке, возвращаю DataSource, DataMember в исходное значение.
Не помогает — та же самая ситуация.
Может этими компонентами можно работать лишь в том потоке, в котором они созданы?
Если это так, то progress bar сделать поистине невозможно.