以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]drawcell的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=95831) |
-- 作者:chnfo -- 发布时间:2017/2/6 16:45:00 -- [求助]drawcell的问题 .NET Framework 版本:2.0.50727.5485 Foxtable 版本:2016.7.29.1 错误所在事件:全局表事件,DrawCell 详细错误信息: 调用的目标发生了异常。 从字符串“数量”到类型“Double”的转换无效。 输入字符串的格式不正确。 全局表事件也仅仅只是这一段代码: If e.Row.Index = e.Table.Current.Index Then e.Style = "SelRow" End If If e.Col.IsNumeric AndAlso e.Row(e.Col.Name) = 0 Then e.Text = "" End If 前面一段已经在afteropenproject事件中加了,而且把后一段注释掉,也不会报错。不太可能是前面一段有问题。 For Each dt As DataTable In DataTables dt.AddUserStyle("SelRow", Color.Bisque, Color.Black) \'选择行样式 Next 如果把这一段代码注释掉,就没有问题 If e.Col.IsNumeric AndAlso e.Row(e.Col.Name) = 0 Then e.Text = "" End If 又或者退出之后,重新打开项目,也不会有问题。 但如果退出之后,删除Bin文件夹,再打开项目,又会报错。 关键问题是: 从字符串“数量”到类型“Double”的转换无效------这一段很怪异,因为所有的表字段都是用英文单词的,从没有用到过中文。 找遍所有的代码,都没有“数量”这一列,输出结构也没有。 这是为什么?
|
-- 作者:有点色 -- 发布时间:2017/2/6 16:52:00 -- If e.Col.IsNumeric AndAlso val(e.Text) = 0 Then e.Text = "" End If |