NEWS

[C#] Hướng dẫn sử dụng iProgress để sử dụng progress bar trong lập trình csharp

[C#] Hướng dẫn sử dụng iProgress để sử dụng progress bar trong lập trình csharp
Đăng bởi: Thảo Meo - Lượt xem: 8017 07:48:06, 25/03/2019C#   In bài viết

Xin chào các bạn, bài viết hôm nay mình sẽ hướng dẫn các bạn cách sử dụng Iprogress trong lập trình bất đồng bộ (async/await) c#.

[C#] Sử dụng IProgress trong lập trình bất đồng bộ

Trong lập trình bất đồng bộ, khi các bạn muốn xử lý một Task công việc nào đó, và muốn trả về phần trăm tiến trình của Task để show lên Progress bar.

Trong bài viết này, mình sẽ hướng dẫn các sử dụng Iprogress để call back phần trăm trả về một cách nhanh chóng.

progress_csharp (1)

Source code C#:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace iProgress
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        public void DoProcessing(IProgress<int> progress)
        {
            for (int i = 0; i != 100; ++i)
            {
                Thread.Sleep(100); 
                if (progress != null)
                    progress.Report(i);
            }
        }

        private async void button1_Click_1(object sender, EventArgs e)
        {
            var startTime = DateTime.Now;


            var progress = new Progress<int>(percent =>
            {
                progressBar1.Value = percent;

            });


            await Task.Run(() => DoProcessing(progress));
        }
    }
}

THANKS FOR WATCHING!

THÔNG TIN TÁC GIẢ

BÀI VIẾT LIÊN QUAN

[C#] Hướng dẫn sử dụng iProgress để sử dụng progress bar trong lập trình csharp
Đăng bởi: Thảo Meo - Lượt xem: 8017 07:48:06, 25/03/2019C#   In bài viết

CÁC BÀI CÙNG CHỦ ĐỀ

Đọc tiếp
.