Вы обновляете свою собственность каждый раз при изменении значения. Когда вы вводите .
, он записывается в вашу модель просмотра и обновляется.
, например. если вы введете 100.
, округлите его до 100
, таким образом вы не увидите ни одной точки.
У вас есть некоторые варианты, чтобы изменить это поведение:
использовать Отложенное связывание:
<TextBox Text="{Binding Path=TransactionDetails.TransactionAmount,
Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged,
Delay=250}"
Grid.Column="3"
Grid.ColumnSpan="2"
Grid.Row="5"
x:Name="TextBoxAmount" />
изменить значение только в том случае, если оно отличается от сохраненного (я бы рекомендовал это для каждой привязки):
private double _transactionAmount;
public double TransactionAmount
{
get { return _transactionAmount; }
set
{
if (_transactionAmount != value)
{
_transactionAmount = value;
Notify("TransactionAmount");
}
}
или использовать какой-то вид проверки, например ValidatesOnExceptions.