Winform中进度条(ProgressBar)的使用


一、实现

        /// 
        /// 初始化进度条
        /// 
        /// 进度条组件
        /// 当前进度值
        /// 进度显示标签
        private void InitProgressBar(ProgressBar progressBar,int minValue,int maxValue)
        {
            if (progressBar == null || minValue < 0 || maxValue < 0 || minValue >= maxValue) return;
            progressBar.Minimum = minValue;
            progressBar.Maximum = maxValue;
        }
        /// 
        /// 启动进度条
        /// 
        /// 进度条组件
        /// 当前进度值
        /// 进度显示标签
        private void StartProgressBar(ProgressBar progressBar, int value, Label lable)
        {
            if (progressBar == null || lable == null) return;
            Application.DoEvents();
            progressBar.Value = value;
            int tmp = value * 100 / progressBar.Maximum;
            lable.Text = tmp + "%__"+value+1+"/"+progressBar.Maximum;
            lable.Refresh();
            progressBar.Refresh();
        }

二、使用

                    int index = 0;
                    int maxIndex = dt.Rows.Count;
                    InitProgressBar(progressBar1,index,maxIndex);
                    foreach (DataRow dr in dt.Rows)
                    {
                        StartProgressBar(progressBar1,index,label4);
                        index++;
              //具体逻辑
                        }
                    }

相关