Трудно полностью отладить проблему без кода для пользовательского элемента управления, однако мне кажется, что у вас есть свойство зависимости от кода, например:
public static DependencyProperty TextValueProperty = DependencyProperty.Register("TextValue", typeof(string), typeof(NumericUpDown1), null)
Тогда вам кажетсяиспользовать события TextInputStart, KeyDown, KeyUp для захвата изменений базового элемента управления.Я догадываюсь, что либо: a) Вам не удалось обновить свойство TextValue до нового значения.б) Ваш код мешает процессу валидации.
Я бы предложил, чтобы вместо кода позади вы указали пользовательский элемент управления в xaml;то есть
<UserControl x:Class="NumericUpDown1" x:Name="View"> ... </UserControl>
Затем привяжите текстовое значение лежащего в основе TextBox непосредственно к свойству зависимости, например так:
<TextBox Text="{Binding ElementName=View, Path=TextValue, Mode=TwoWay, ValidatesOnNotifyDataErrors=True, NotifyOnValidationError=True}" ... />
Это должно позволить механизму валидации работать как обычно.1012 *
Надеюсь, это поможет.