2016-12-02 6 views
0

Как изменить TextEdit цвета границы в WPF форме во время проверки входных данных пользователя с помощью DevExpressКак изменить TextEdit цвета границы во время проверки входных данных пользователя

У меня есть пункт в моей форме:

<dxe:TextEdit x:Name="txtTextEdit" 
Text="{Binding FilterField, 
UpdateSourceTrigger=PropertyChanged}" 
ValidateOnTextInput="False" 
Validate="txtValidate"/> 

Также создан ничтожным Подтвердить это поле:

private void txtValidate(object sender, DevExpress.Xpf.Editors.ValidationEventArgs e) 


{ 
if (e.Value == null) return; 
if (e.Value.ToString().Length > 4) return; 
e.IsValid = false; 
e.ErrorType = DevExpress.XtraEditors.DXErrorProvider.ErrorType.Warning; 
e.ErrorContent = "Enter more than 4 symbols"; 
} 

И как изменить цвет границы вместо того, чтобы показывать ошибку?

+0

вам нужно будет сделать привязку для 'BorderBrush' в зависимости от цвета. – Prajwal

ответ

1
<Border BorderBrush="{Binding MyBorderBrush}"> 
<dxe:TextEdit x:Name="txtTextEdit" 
Text="{Binding FilterField, 
UpdateSourceTrigger=PropertyChanged}" 
ValidateOnTextInput="False" 
Validate="txtValidate"/> 
</Border> 

и это в методе,

e.IsValid = false; 
e.ErrorType = DevExpress.XtraEditors.DXErrorProvider.ErrorType.Warning; 
e.ErrorContent = "Enter more than 4 symbols"; 
MyBorderBrush = Brushes.Red; 

MyBorderBrush это свойство. Вам нужно определить правильное привязку. Его тип данных должен быть Brush, который составляет от System.Windows.Controls. Вам нужно использовать эту библиотеку.

+0

Я получаю сообщение об ошибке, что граница не поддерживается в WPF – Songaila

+0

Извините, это 'B', я набрал' b' – Prajwal

+0

И как и где описать MyBorderBrush для привязки? – Songaila