【问题标题】:Value of '10000' is not valid for 'Value'. 'Value' should be between 'minimum' and 'maximum'. Parameter name: Value [closed]“10000”的值对“值”无效。 “值”应介于“最小值”和“最大值”之间。参数名称:值[关闭]
【发布时间】:2014-07-22 14:24:20
【问题描述】:

“345900”的值对“值”无效。 “值”应介于“最小值”和“最大值”之间。 参数名称:值

 if (e.CurrentProgress > 0)
        {
            progressBar1.Value = Convert.ToInt32(e.CurrentProgress);
            progressBar1.Maximum = (100);
            progressBar1.Minimum = (0);

        }
        else
            progressBar1.Value = Convert.ToInt32(0);

更新: 感谢大家帮助我..我找到了解决方案,尽管它不是完整的解决方案..这是代码。

 if ((e.CurrentProgress > 0) && (e.MaximumProgress > 0))
        {
            progressBar1.Maximum = Convert.ToInt32(e.MaximumProgress);
            progressBar1.Step = Convert.ToInt32(e.CurrentProgress);
            progressBar1.PerformStep();
            progressBar1.Refresh();
        }
            else
                progressBar1.Value = (0);

【问题讨论】:

  • 您将最大值设置为 100,但尝试将值设置为 1000。
  • 普通人,您将最大值设置为 100 并期望它接受 10000 作为值?
  • 异常消息中具体有什么不清楚的地方?任何人都可以做的就是将消息读回给您。目前尚不清楚您对 SO 用户的期望。

标签: c# webbrowser-control


【解决方案1】:

更新我不确定在编辑问题之前下面的答案是否有意义。但在 :-) 之后它肯定看起来毫无意义。


这有点难说,但也许换行会有所帮助(我猜不需要unchecked):

progressBar1.Maximum = Convert.ToInt32(e.MaximumProgress);
progressBar1.Value = Convert.ToInt32(e.CurrentProgress);

【讨论】:

  • 它不起作用.. 换行不会改变我的错误
  • 你确定e.MaximumProgress >= e.CurrentProgress
  • 错误正是在此时发生。 progressBar1.Value = Convert.ToInt32(e.CurrentProgress);
  • 当然。此时e.MaximumProgress的值是多少?
  • 我不确定最大进度是否大于当前进度,因为当前进度是动态的,它仅在加载网页时取值。我不修复当前的进度。
猜你喜欢
  • 2013-07-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-04
  • 1970-01-01
  • 1970-01-01
  • 2015-07-29
相关资源
最近更新 更多