VB.NET中 datagridview单元格内容改变时设置单元格显示为3位小数
在VB.NET中,我想要做的是改变“有效值”这一列单元格的值,判断输入10以下时,就显示4位小数如5.0200,当输入10以上时,显示为3位小数,如12.0000。我用d...
在VB.NET中,我想要做的是改变“有效值”这一列单元格的值,判断输入10以下时,就显示4位小数如5.0200,当输入10以上时,显示为3位小数,如12.0000。我用datagridview绑定了数据源,为了加载数据时,默认值1显示为1.0000,也已设“有效值”这一列为singel,且显示为4位小数,但不知道怎么能实现修改单元格值时,能实现大于10时该单元格就显示3位小数。我是菜鸟,怎么能做不出来,急求高手帮忙呀,希望能给出具体解决方案和代码。
DataGridViewCellStyle.FormatProvider 属性
获取或设置对象,该对象用于提供 DataGridView 单元格值的特定于区域性的格式设置。用这个属性是不是能够改呢?若能,麻烦给出方法帮实现。
难道只能设为文本格式,重新判断吗?
刚写错了,显示为3位小数,如12.000 展开
DataGridViewCellStyle.FormatProvider 属性
获取或设置对象,该对象用于提供 DataGridView 单元格值的特定于区域性的格式设置。用这个属性是不是能够改呢?若能,麻烦给出方法帮实现。
难道只能设为文本格式,重新判断吗?
刚写错了,显示为3位小数,如12.000 展开
1个回答
展开全部
DataGridViewCellStyle方法不通用,区域性设置太麻烦了。
以下是程序方法:
可以先将数据源放入一张表中,不要直接绑定。新表是可以改string的。
那个列必须是string,不能是single
代码写在cellendedit的过程中,每次用户退出单元格编辑后引发
dim a1 as single
dim a2 as string
Try
a1=csng(当前单元格值)
Catch ex As Exception
MessageBox.Show("输入条件不符合要求!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit Sub
End Try
if a1<1 then
a2=formate(a1,"0.0000")
else
....
endif
完事后a2赋值给当前单元格即可。
以下是程序方法:
可以先将数据源放入一张表中,不要直接绑定。新表是可以改string的。
那个列必须是string,不能是single
代码写在cellendedit的过程中,每次用户退出单元格编辑后引发
dim a1 as single
dim a2 as string
Try
a1=csng(当前单元格值)
Catch ex As Exception
MessageBox.Show("输入条件不符合要求!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit Sub
End Try
if a1<1 then
a2=formate(a1,"0.0000")
else
....
endif
完事后a2赋值给当前单元格即可。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询