Задать вопрос
LoneRay
@LoneRay
Начинающий кодировщик.

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

Помогите пожалуйста. Не могу во время удаление папки заблокировать форму и кнопки и при этом поменять курсор с Arrow на Wait.
Удаляю с помощью Directory.Delete("Путь каталога", true);
Пробовал так
this.Cursor = Cursors.Wait;
Directory.Delete("Путь каталога", true);
но он меняет курсор после удаления, а надо до удаления. Помогите пожалуйста как сделать.
  • Вопрос задан
  • 196 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Stepik
    PRO C#. Профессия "Разработчик оконных приложений"
    2 месяца
    Далее
  • Stepik
    PRO C#. WPF
    3 месяца
    Далее
  • Stepik
    C# WPF. Создание оконного приложения
    2 недели
    Далее
Решения вопроса 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();
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы