У меня TextBox
привязано к свойству int
с атрибутом [Required]
и [Range(1, 5)]
, при запуске приложения TextBox
получает 0
, если я нажимаю Backspace и удаляючто 0, я получаю это сообщение в журнале отладки:
System.Windows.Data Error: 7 : ConvertBack cannot convert value '' (type 'String'). BindingExpression:Path=Order.PartyCode; DataItem='OrderVM' (HashCode=66572856); target element is 'TextBox' (Name=''); target property is 'Text' (type 'String') FormatException:'System.FormatException: Input string was not in a correct format.
at System.Number.ThrowOverflowOrFormatException(ParsingStatus status, TypeCode type)
at System.String.System.IConvertible.ToInt32(IFormatProvider provider)
at System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)
at MS.Internal.Data.SystemConvertConverter.ConvertBack(Object o, Type type, Object parameter, CultureInfo culture)
at System.Windows.Data.BindingExpression.ConvertBackHelper(IValueConverter converter, Object value, Type sourceType, Object parameter, CultureInfo culture)'
и проверка не работает. Я получаю ту же ошибку, если использую Nullable<int>
вместо int
!
Обязательно ли иметь string
свойства для работы с TextBox
или есть способ решить эту проблему?