微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 进度条未达到100%

我正在使用 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;

解决方法

根据以下 David Heffernan’s answer,问题是由Windows 7中添加的动画引起的.该问题得到修复,执行以下操作:
progressBar1.Value = mValue;
                progressBar1.Value = mValue - 1;

原文地址:https://www.jb51.cc/csharp/96866.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐