我有一个数据网格列,其值是可编辑的。
<DataGridTextColumn Header="Value" Binding="{Binding Value}" />
当前,我可以为单元格输入任何值。 (字符,数字..) 我只需要对数字和逗号进行验证。 有什么办法可以做到这一点?
答案 0 :(得分:1)
您应将Value
属性的类型更改为double
,float
或decimal
。除了有效的double
值,您不能将double
类型的属性设置为其他任何值。
只有Value
是string
时,您才能将其设置为“任何值”。
因此,实现所需目标的最简单方法是使用适当的数据类型。如果您想执行一些更复杂的验证,请阅读documentation here。
答案 1 :(得分:0)
我唯一想到的就是将StringFormat添加到绑定中
Binding="{Binding Value, StringFormat=\{0:F\}}
答案 2 :(得分:0)
<DataGridTextColumn Binding="{Binding Value, StringFormat={}{0:N2}}"/>
您可以使用 StringFormat 解决此问题。