Я хочу сделать валидацию в отдельном определении xaml с помощью собственного кода на C# для создания окон. Я был read the resource о коде как такая проверка с таможенной проверкойКак сделать разделенную проверку в приложении WPF в приложении Windows
<Window xmlns:validators="clr-namespace:MyValidators" [...]/>
, а затем это определение XAML с помощью специального кода
<TextBox x:Name="textAge">
<TextBox.Text>
<Binding Path="Name">
<Binding.ValidationRules>
<validators:StringRangeValidationRule
MinimumLength="1"
ErrorMessage="Age is required." />
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
</TextBox>
Но я хочу, чтобы проверка стала как этого
<TextBox x:Name="textAge" Text="{Binding Path=Age}"/>
И в отдельном файле я хочу определить свою собственную проверку, например Validation.xml
<validation:StringrangeValidationRule target="textAge" MinimumLength="1" errorMessage="Age is required" />
Как я могу это сделать, у меня так много текстовых полей с различными правилами проверки. Я не хочу смешивать определение текстового поля и проверки в одном месте, что может заставить меня трудно читать код ...
Любая помощь С уважением ..
Но у моего текстового поля почти разные проверки для каждого из них. Есть ли какой-либо метод, который, как я описал ранее, .... – mrhands
Вы можете иметь столько стилей, которые определены для TextBox в словаре ресурсов XAML, и назначить их для разных отдельных текстовых блоков на ключ. Например, у вас может быть стиль ** TextBoxStyle1 ** таргетинг ** TextBox1 ** и ** TextBoxStyle2 ** таргетинг ** TextBox2 ** и т. Д. Если вы хотите сохранить WPF ValidationRule, тогда определите базовый стиль для вашего TextBox, который будет включать ваши обычные стили для всех текстовых полей, а затем для отдельных стилей TextBox, содержащих правило проверки, используйте атрибут ** BasedOn ** стиля, например * * BasedOn = "{StaticResource BaseTextBoxStyle}" **. – Jatin