Иван
25.04.2025
Подскажите как можно в окне приложения добавить панель загрузки, которая будет отвечать за выполнения процедур из БД и показывать в процентах выполненный объем работы, при этом чтобы сама форма продолжала оставаться активной.
Операционная система: Windows
Статус: вопрос решён
Вячеслав
клиент
25.04.2025
Иван, для вашей задачи нужно реализовать в приложении индикатор прогресса - ProgressBar, который должен обновляться асинхронно, не блокируя основной поток.
Иван
клиент
25.04.2025
Вячеслав, можете пожалуйста привести пример реализации, не смог найти достаточно информации на этот счет
Вячеслав
клиент
25.04.2025
Иван, вариант реализации:
private async Task GetDataAsync()
{
progressBar1.Value = 0;
await Task.Run(() =>
{
for (int i = 0; i <= 100; i++)
{
System.Threading.Thread.Sleep(100); // Имитация долгой загрузки
Invoke((MethodInvoker)(() => progressBar1.Value = i));
}
});
}
private void buttonStart_Click(object sender, EventArgs e)
{
GetDataAsync();
}
Чтобы комментировать, необходимо авторизоваться или зарегистрироваться.
Все советы и рекомендации, размещённые на форуме, носят исключительно информационный характер и не являются официальной инструкцией.
Перед применением любых советов убедитесь в их актуальности и безопасности для вашей конкретной ситуации. Правила форума.