tempf = ((float)(upsize + ex.BytesReceived) / size);
this.progressBar1.Value= Convert.ToInt32(tempf * 100);在本地转化的时候没有问题,可是放到网络上的时候 就报这个错误 System.OverflowException: 值对于 Int32 太大或太小
我把this.progressBar1.Value= Convert.ToInt32(tempf * 100); 这个里面的换成Convert.ToInt64(tempf * 100); 还是不可以 谁可以帮帮忙
this.progressBar1.Value= Convert.ToInt32(tempf * 100);在本地转化的时候没有问题,可是放到网络上的时候 就报这个错误 System.OverflowException: 值对于 Int32 太大或太小
我把this.progressBar1.Value= Convert.ToInt32(tempf * 100); 这个里面的换成Convert.ToInt64(tempf * 100); 还是不可以 谁可以帮帮忙
解决方案 »
- 关于邮件群发送多处理的问题
- 怎么操作dojo控件TreeView的节点Node
- ASP.NET中如何实现在线批改?(比如说在线作业批改或在线论文批改)
- C# winform中如何在业务逻辑层直接取到用户ID
- 关闭一个窗体时给另一个窗体中的控件赋值
- treeview框架的数据更新
- C#获的文件夹大小的问题.在线等等....
- 关于Infragistics WinGrid控件的问题
- 我的C# 装在win2003 R2的版本上出问题,命名窗口的name属性改了名字 在资源查看中名字还是没有改 不知道是不是win2003 R2的问题?
- 强制类型转换问题
- 菜鸟提问,请回答
- HTML怎么转成纯文本,就像把网页粘贴到记事本里面那样干净。
改为int改为long试下
this.progressBar1.Value= Convert.ToInt32(tempf);
==>
this.progressBar1.Value= Convert.ToInt64(tempf) * 100;
试试
无法将类型“long”隐式转换为“int”。存在一个显式转换(是否缺少强制转换?)
这个我早试过了 不行的 出现这样的错误
long x = (long)(tempf * 100);
this.progressBar1.Value= x > int.MaxValue ? int.MaxValue : x;
long x = (long)(tempf * 100);
this.progressBar1.Value = (int)(x > int.MaxValue ? int.MaxValue : x);
progressBar.Maximum = 100;
CultureInfo.InvariantCulture,
"正在下载:{0} [ {1}/{2} ]",
fileName,
ConvertSize(ex.BytesReceived),
ConvertSize(ex.TotalBytesToReceive)); filesize = ex.TotalBytesToReceive;
tempf = ((float)(upsize + ex.BytesReceived) / size);
long x = (long)(tempf * 100);
this.progressBar1.Value = (int)(x > int.MaxValue ? int.MaxValue : x); ;
this.progressBar2.Value = ex.ProgressPercentage;
MaximumSize 设置大小,该大小是 GetPreferredSize 可以指定的上限
设置百分比
string dirPath = context.Server.MapPath("/AutoUpdater/");
改成:
string dirPath = context.Server.MapPath("~/AutoUpdater/");
大家都很汗...