Отображение прогресса часто желательно.Но вы делаете должны иметь возможность измерить прогресс, чтобы сделать это значимым.Предполагая, что вы имели в виду DataSet.ReadXml (), этот класс не имеет какого-либо события ProgressChanged, которое вы могли бы использовать, чтобы сообщить пользователю, как далеко продвинулась работа.Вы также не можете заранее догадаться, сколько времени это займет.Время выполнения примерно пропорционально размеру XML-файла, но пропорцию точную невозможно точно угадать.
Все, что вы можете сделать, это сообщить пользователю: «Я занят,не ждите ничего на некоторое время ".Курсор для песочных часов был стандартным способом сделать это в течение последних 20 лет.Вы можете полюбоваться анимацией.И это все, чем является ProgressBar в режиме шатер.Это совсем не помогает пользователю.Хотя в него добавлено немного информации: «операционная система не рухнула».Полезно 20 лет назад.
Вы можете создать свою собственную анимацию.Работают ли анимированные GIF на CF?Если нет, вы можете перевернуть растровые изображения самостоятельно.Однако вы берете на себя дополнительное бремя, вы должны поддерживать анимацию анимации.Для этого необходимо запустить вызов ReadXml () в другом потоке, чтобы поток UI был доступен для обновления изображения.Нет никакого BackgroundWorker в CF, вам придется раскрутить эту нить самостоятельно.