Задать вопрос
Hateman31
@Hateman31
Делиться мыслями - это круто!

Как заставить UI «ждать» выполнения операции?

Есть десктоп утилита. Она выполняет чтение большой таблицы из файла.
Как сделать, чтобы UI не блочился пока идет обработка файла?
Посоветуйте толковый гайд по потокам.
В Гугле не банили, но сам найти не могу, так как новчиок в dotNet. Слишком сложный материал.
Асинхронный метод не нужен.
Надо только, чтобы в окошке был статус "Обработка файла...", пока файл грузится, но само окно было активным.

UPD: Проблема с потоками в том, что файлов может быть несколько. И каждый новый файл добавляется в объект MyTable через метод add_file. То есть у нас есть некое состояние, которое нужно хранить между чтением файлов.

UPD2: По-другому, как в новом потоке изменить объект, который создан в UI-потоке и не заблочить UI-поток ?
  • Вопрос задан
  • 106 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Разработчик игр на Unity
    13 месяцев
    Далее
  • Академия Эдюсон
    Разработчик игр на Unity + ИИ
    6 месяцев
    Далее
  • Stepik
    PRO C#. Профессия "Backend разработчик"
    4 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 2
twobomb
@twobomb
(new Thread(() => {
                Invoke(new Action(() =>
                {
                    mylabel.Text = "Обработка файла...";
                }));

                //Тут обработка файла
                Invoke(new Action(() =>
                {
                    mylabel.Text = "Обработка файла завершена!";
                }));

            })).Start();
Ответ написан
BasiC2k
@BasiC2k
.NET developer (open to job offers)
Прочитайте статью на сайте rsdsn про потоки. Всем рекомендую. Потоки - тема, в которую нужно погружаться полностью.
Ответ написан
Ваш ответ на вопрос

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

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