在研究别的软件时,发现在相应表格里面可以直接输入计算内容,自动计算数值,不用调用自带计算器等,
而搜索论坛,发现基本都是调用计算器,思路定向于编制独立函数,结果水平太低,灵光一闪:
用自带val, Eval数据直接运算:
在datacolchanged加入
If e.DataCol.Name = "字符列" Then '自行改回需求列名
If e.DataRow.IsNull("字符列") Then
e.DataRow("字符列") = Nothing
Else
Dim s As String = e.DataRow("字符列")
e.DataRow("字符列") = val(Eval(e.DataRow("字符列")))
End If
End If
'注意事项:没有作字符个数截取,所以计算结果如果超过当前字符列长度,系统会自动提示截取
'如果需要调用本列数值,需要自行尝试字符数值转换
'测试数据如: (1+8)/3.3
'如果输入包含全格运算符,好像也正常运算,如果带字母的,结果会自动为0,为0这个是学其它软件功能考虑的。
'可能会存在其它未考虑情况,如果需要提示带字母的要对结果提示出错,可以自行尝试使用IsNumeric等判断函数