1

我正在使用 Silverlight 5 和 C#。我的模型 ( CustomerModel) 实现INotifyDataErrorInfo了验证用户输入的接口。其TextBoxText 属性绑定到模型中的某个属性,该属性在每次击键时都经过验证(我已设置UpdateSourceTrigge=PropertyChanged),其行为很奇怪 - 当我输入空格时,光标移动到TextBox. 很烦人。

<TextBox x:Name="txtDebtorName" Grid.Row="2" Grid.Column="1"
           Text="{Binding SelectedItem.Name, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, ValidatesOnNotifyDataErrors=True, ValidatesOnExceptions=True, NotifyOnValidationError=True}"
           IsReadOnly="{Binding IsReadonly}" >
</TextBox>

任何想法是什么导致了这种行为,以及如何解决它?

模型中的属性:

public string Name
{
    get { return _Name; }
    set
    {
        const string propertyName = "Name";
        ValidateRequiredString(propertyName, value, Utility.GetTranslation("RequiredFieldDebtorName"));

        _Name = value;
        RaisePropertyChanged(propertyName);
    }
}

ValidateRequiredString()方法采用PropertyName、正在设置的值和错误消息。

4

0 回答 0