WPF DataGridTextColumn绑定不接受小数

时间:2013-09-24 15:22:02

标签: c# wpf xaml datagridtextcolumn

我不明白问题是什么。绑定在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”附加到我输入的任何内容的末尾。

我需要的只是输入句点的许可。

更新:

我被指示here。我删除了UpdateSourceTrigger属性,这使我可以输入'。'。我没有安装4.5 Beta,我的本地化设置是正确的。所以现在我的问题是如何让DataGridTextColumn允许我输入'。'是否设置了UpdateSourceTrigger属性?

1 个答案:

答案 0 :(得分:15)

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