У меня есть контроль, который наследует от текстового поля
public class MyTextBox : TextBox
Это стиль
<Style TargetType="{x:Type Controls:MyTextBox}">
один из Сеттеров
<Setter Property="Template">
Я хочу иметь возможность установить Binding.ValidationRules
для чего-то в шаблоне, таким образом затрагивая все экземпляры этого типа текстового поля.
Поэтому я могу сделать текстовые поля для, скажем, Времена, Даты, Числа, почтовые / почтовые индексы ... или все, что я хочу,
Мне не нужно устанавливать правила проверки каждый раз, когда я создаю текстовое поле. Я просто хочу сказать, что я хочу NumericTextBox
и проверить его любым способом, установленным в шаблоне.
Возможно ли это?
Все, что я видел до сих пор, это то, что ValidationRules устанавливаются для каждого экземпляра элемента управления, например
<TextBox x:Name="txtEMail" Template={StaticResource TextBoxErrorTemplate}>
<TextBox.Text>
<Binding Path="EMail" UpdateSourceTrigger="PropertyChanged" >
<Binding.ValidationRules>
<local:RegexValidationRule Pattern="{StaticResource emailRegex}"/>
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
(от http://www.wpftutorial.net/DataValidation.html)