9

我不明白问题可能是什么。绑定在 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 允许我输入“。” 设置了 UpdateSourceTrigger 属性?

4

1 回答 1

18

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

于 2013-09-24T15:40:34.973 回答