دسته بندی ها
22:23 1401/08/03

نمایش Loader حین پردازش سنگین در WPF سی شارپ

مشخصات سوال کننده :
کاربر : mojtabahakimian     امتیاز کاربر : 155     رتبه کاربر : 10
دسته بندی : سی شارپ WPF Sql Server Entity Framework

به این سوال امتیاز بدهید    0
تعداد بازدید این سوال : 2245
هوش مصنوعی

پاسخ هوش مصنوعی

برای نمایش یک Loader حین پردازش سنگین در WPF و جلوگیری از قفل شدن UI، شما می توانید از یک Task استفاده کنید و در عین حال از async و await به طور مؤثر بهره ببرید. به این ترتیب، UI شما قادر به پاسخگویی خواهد بود. در اینجا یک نمونه کد برای این کار آورده شده است:

private async void Button1_Click(object sender, RoutedEventArgs e)
{
    // نمایش لودر
    Spinner.Visibility = Visibility.Visible;

    // انجام عملیات طولانی در یک Task
    await Task.Run(() =>
    {
        // شبیه سازی عملیات طولانی
        System.Threading.Thread.Sleep(3000); // مدت زمان کار سنگین
        for (int i = 0; i < 1000; i++)
        {
            Console.Write(i);
        }
    });

    // پنهان کردن لودر پس از اتمام عملیات
    Spinner.Visibility = Visibility.Collapsed;
    MessageBox.Show("Finished", "Information", MessageBoxButton.OK, MessageBoxImage.Information, MessageBoxResult.Yes);
}

با استفاده از این کد، لودر در حین اجرای عمل سنگین نمایش داده خواهد شد و پس از پایان عملیات، لودر پنهان می شود. با این روش UI شما همیشه پاسخگو باقی می ماند.

به این پاسخ امتیاز بدهید    0
امتیاز: - رتبه: -
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود