WPF DataGridTextColumn 绑定不接受小数

本文关键字:小数 不接受 绑定 DataGridTextColumn WPF | 更新日期: 2023-09-27 18:32:47

我不明白问题可能是什么。绑定位于 Decimal 属性上。下面是 XAML:

<DataGridTextColumn Header="Price" Binding="{Binding Price, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged} Width="*"/>

我实际上无法键入"."字符。为什么它会阻止我输入该字符,我如何告诉它让我这样做。

我尝试做这样的字符串格式:

<DataGridTextColumn Header="Price" Binding="{Binding Price, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, StringFormat={}{0:n2}} Width="*"/>

但这并不能解决我的问题,因为它所做的只是将".00"附加到我键入的任何内容的末尾。

我所需要的只是输入句点的权限。

更新:

我被引导到这里。我删除了 UpdateSourceTrigger 属性,这使我可以键入"."。我没有安装 4.5 Beta,我的本地化设置是正确的。所以现在我的问题是如何让 DataGridTextColumn 允许我在设置更新源触发器属性的情况下键入"."?

WPF DataGridTextColumn 绑定不接受小数

UpdateSourceTrigger=PropertyChanged 在每次击键时重新评估文本。以小数点结尾的数字无效。将 UpdateSourceTrigger 更改为 LostFocus(与删除它相同)或尝试键入".",而后面还有其他数字。