У меня проблема с проверкой в wpf.У меня есть текст textbox
<TextBox x:Name="Login" Grid.Column="2" Grid.Row="2">
<TextBox.Text>
<Binding Mode="TwoWay" Path="Email" UpdateSourceTrigger="PropertyChanged">
<Binding.ValidationRules>
<DataErrorValidationRule />
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
<TextBox.Style>
<Setter Property="Validation.ErrorTemplate">
<Setter.Value>
<ControlTemplate>
<DockPanel LastChildFill="True">
<TextBlock DockPanel.Dock="Bottom" Foreground="Maroon" FontSize="10pt"
Text="{Binding ElementName=Emael, Path=AdornedElement.(Validation.Errors)[0].ErrorContent}">
</TextBlock>
<Border BorderBrush="DarkRed" BorderThickness="1">
<AdornedElementPlaceholder Name="Emael" />
</Border>
</DockPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</TextBox.Style>
</TextBox>
и свойства
public string Error => throw new NotImplementedException();
public string this[string columnName]
{
get
{
string error = String.Empty;
switch (columnName)
{
case "Email":
if (Email == null || Email == string.Empty)
{
error = "Field login must be required";
}
break;
}
return error;
}
}
Я не знаю, как использовать регулярное выражение здесь, в конце я использую dataAnnotation
[Required(ErrorMessage = "This field should be filled in")]
[RegularExpression(@"\w+(@)[a-zA-z]+(\.)[a-zA-z]+", ErrorMessage = ("Use the right email format"))]
как написать ту же логику в форме (проверка клиента).может быть лучше написать свой собственный класс проверки и как-то связать со свойством?Что лучше сделать?