2016-01-25 3 views
1

У меня есть текстовое поле и привязан к объекту.Получить сообщение об ошибке при появлении

public SapLanguage Language 
{ 
    get { return _language; } 
    set 
    { 
     _language = value; 
     RaisePropertyChanged(); 
    } 
} 

SapLanguage является перечисление:

public enum SapLanguage 
{ 
    DE, 
    EN, 
    FR, 
    IT 
} 

МОФ выглядит следующим образом:

<TextBox Grid.Row="3" Grid.Column="1" Margin="10,10,10,10" FontSize="26" FontWeight="Bold" 
        CharacterCasing="Upper" 
        HorizontalAlignment="Left" VerticalContentAlignment="Center" MaxLength="2" Width="60" 
        HorizontalContentAlignment="Center" Text="{Binding Language, StringFormat={} }"> 
</TextBox> 

Когда я введите значение в текстовое поле, которое не существует. Он показывает мне ошибку:

enter image description here

Как я могу сохранить сообщение об ошибке в переменную?

+1

Проверьте свое свойство Validation, HasError собственности и ошибки сбора. Также есть событие «Ошибка», к которому вы можете подключить триггер. –

+0

Как я могу реализовать свойство Validation? –

+0

Запуск pont: https://msdn.microsoft.com/it-it/library/system.windows.controls.validation(v=vs.100).aspx –

ответ

2

Для привязки перечисление к TextBox вам понадобится класс преобразователя, который реализует интерфейс IValueConverter.

Для отображения перечисления, я пустошь предпочитают использовать ComboBox вместо этого, как это: https://stackoverflow.com/a/6145957/5764665

Смежные вопросы