Как показать сообщение об ошибке ниже текстового поля вместо какого-либо символа
У меня есть код для проверки.ErrorTemplate:
<Style TargetType="{x:Type TextBox}"> <Setter Property="Validation.ErrorTemplate"> <Setter.Value> <ControlTemplate> <DockPanel LastChildFill="True"> <TextBlock DockPanel.Dock="Bottom" Foreground="Red" HorizontalAlignment="Center" FontSize="14" FontWeight="Bold" Margin="5,0,0,0" ToolTip="{Binding ElementName=adornerPlaceholder, Path=AdornedElement.(Validation.Errors)[0].ErrorContent}">{0}</TextBlock> <AdornedElementPlaceholder Name="adornerPlaceholder"></AdornedElementPlaceholder> </DockPanel> </ControlTemplate> </Setter.Value> </Setter> </Style>
Вторая часть кода, свойство-это:
публичный строковый пароль
{
get { return _passWord; }
набор
{
if (_passWord == значение)
{
вернуть;
}
_значение пароля;
List<string> errors = новый список<string>();
боол действует = истина;
если (значение == нуль || значение == "")
{
errors.Add("пароль не может быть пустым.");
SetErrors("пароль", ошибки);
действительный = ложь;
}
если (допустимо)
{
ClearErrors("Пароль");
}
OnPropertyChanged(new PropertyChangedEventArgs("пароль"));
}
}
Он работает отлично, но чего я хочу добиться, так это как получить полный текст сообщения об ошибке ниже текстового поля, в которое были введены данные и распознаны в моей коллекции ошибок как неправильные?
Итак, просто чтобы иметь текст вместо*, и этот текст должен быть изменен в зависимости от другого текстового поля, так как у меня есть много полей для ввода
Что я уже пробовал:
Исследовали в сети, но безуспешно.
Richard MacCutchan
- Он отлично работает"
Очевидно, нет.
Afzaal Ahmad Zeeshan
Очень простой способ сделать это - использовать несколько элементов управления в одном пользовательском элементе управления. Легче разрабатывать, чище поддерживать и отлаживать.
Sinisa Janjetovic
Не могли бы вы прислать мне образец?
BillWoodruff
посмотрите, может ли использование всплывающих подсказок удовлетворить ваши потребности:
https://wpf-tutorial.com/control-concepts/tooltips/