小编mof*_*dul的帖子

计算的进度百分比未更新

我正在尝试显示标签中后台工作人员的进度百分比值。我正在添加 Aprox。数据表 25 K 行。当我仅将 Label.Text 设置为 e.ProgressPercentage 时,它​​工作正常。但是当我计算%值时,它保持不变。只有在worker完成后标签才更新为100%

                progressCount = report.Rows.Count;
                foreach (DataRow r in report.Rows)
                {

                        rp.pName = r[1].ToString();
                        rp.batch = r[2].ToString();
                        rp.expr = r[3].ToString();
                        rp.stock = r[5].ToString();
                        rp.rate = r[6].ToString();
                        backgroundWorker2.ReportProgress(i, rp);
                        System.Threading.Thread.Sleep(2);
                        if(backgroundWorker2.CancellationPending)
                        {
                            e.Cancel = true;
                            backgroundWorker2.ReportProgress(0);
                        }
                        i++;

                }



private void backgroundWorker2_ProgressChanged(object sender, ProgressChangedEventArgs e)
    {
        metroProgressBar1.Minimum = 0;
        metroProgressBar1.Maximum = progressCount;
         stock st = new stock();
        reportClass rp = (reportClass)e.UserState;
        if(!backgroundWorker2.CancellationPending)
        {
            st.stockReport.Rows.Add(rp.pName, rp.batch, rp.expr, rp.stock, rp.rate);
            metroProgressBar1.Value = e.ProgressPercentage;
            int percn = …
Run Code Online (Sandbox Code Playgroud)

c# backgroundworker

1
推荐指数
1
解决办法
385
查看次数

标签 统计

backgroundworker ×1

c# ×1