进度条未达到100%

Dan*_*lba 6 .net c# scrollbar winforms

我正在使用Winforms中的滚动条执行一些测试.我有以下代码,似乎是正确的,但我从来没有看到滚动条完全填充.当滚动条值达到100时,滚动绘制如此图所示(约50%).

在此输入图像描述

这是我正在使用的示例代码:

    private void animate_scroll(object sender, EventArgs e)
    {
        progressBar1.Minimum = 0;
        progressBar1.Maximum = 100;
        progressBar1.Step = 1;

        ThreadPool.QueueUserWorkItem(new WaitCallback(AnimateScroll));
    }

    private void AnimateScroll(object state)
    {
        while (true)
        {
            mValue = (mValue + 1) % 101;
            this.Invoke((MethodInvoker)delegate()
            {
                progressBar1.Value = mValue;
                System.Diagnostics.Debug.WriteLine(progressBar1.Value);
            });
            System.Threading.Thread.Sleep(10);
        }
    }

    private int mValue = 0;
Run Code Online (Sandbox Code Playgroud)

Dan*_*lba 13

根据以下David Heffernan的 回答,问题是由Windows 7中添加的动画引起的.该问题得到修复,执行以下技巧:

                progressBar1.Value = mValue;
                progressBar1.Value = mValue - 1;
Run Code Online (Sandbox Code Playgroud)