Добавьте два свойства к вашей виртуальной машине:
bool IsProgressBarVisible
double ProgressValue
Если вы запускаете длительную операцию в вашей виртуальной машине, установите для свойства IsProgressBarVisible значение true и установите для периодического издания ProgressValue текущее значение прогресса. Попробуйте вычислить значение от 0 до 100. Это имеет то преимущество, что вам не нужно указывать минимальное и максимальное значение.
После завершения асинхронной операции установите для IsProgressBarVisible значение false.
В XAML свяжите эти два свойства. Используйте преобразователь значений для преобразования логической видимости в видимость.
<ProgressBar Value="{Binding ProgressValue}" Visibility="{Binding IsProgressBarVisible,Converter={StaticResource BooleanToVisibility_ValueConverter}}"/>