LoneRay
@LoneRay
Начинающий кодировщик.

Как уведомить пользователя о том, что в данный момент происходит удаление?

Помогите пожалуйста. Не могу во время удаление папки заблокировать форму и кнопки и при этом поменять курсор с Arrow на Wait.
Удаляю с помощью Directory.Delete("Путь каталога", true);
Пробовал так
this.Cursor = Cursors.Wait;
Directory.Delete("Путь каталога", true);
но он меняет курсор после удаления, а надо до удаления. Помогите пожалуйста как сделать.
  • Вопрос задан
  • 185 просмотров
Решения вопроса 1
andrewpianykh
@andrewpianykh
Напрашивается:
this.IsEnabled="False";

Если операция удаления довольно продолжительная по времени, то стоило бы выполнять ее в другом потоке (не в "UI-потоке"):

var bw = new BackgroundWorker();
bw.DoWork += (o, eo) =>
{
	Directory.Delete("Путь каталога", true);
};
bw.RunWorkerCompleted += (o, eo) =>
{
	IsEnabled = true;
        Mouse.OverrideCursor = Cursors.Arrow;
};

IsEnabled = false;
Mouse.OverrideCursor = Cursors.Wait;
bw.RunWorkerAsync();
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы