2010-03-29 5 views
2

У меня есть DevExpress TextEdit, который привязан к набору данных.Почему недействительное значение выбрасывается?

Поле является необязательным процентом (тип данных двойной).

Когда запись загружается и в поле нет значения, все в порядке.

Однако, если вы введете что-то в поле (IE 100), а затем захотите удалить его впоследствии, я получаю недопустимое значение, ошибка.

Почему это происходит и как его удалить?

У меня нет маски или явной проверки в этом поле.

ответ

4

Я решил это с помощью Брендона Мака на форумах DevExpress.

Один из моих TextEdit годов был связан с Text собственности вместо EditValue (все должны быть связаны с EditValue)

Кроме того, за Брендона

Удаление текст из элемента управления TextEdit Безразлично» t установите для поля значение NULL. Вам нужно будет обработать событие EditValueChanged и вручную установить значение null, когда будет обнаружена пустая строка.

Итак, я создал метод, чтобы справиться с этим

Private Sub SetTextEditToNull(ByVal sender As TextEdit) 

    If String.IsNullOrEmpty(sender.EditValue.ToString.Trim()) And (Not sender.EditValue Is DBNull.Value) Then 

     sender.EditValue = DBNull.Value 

    End If 

End Sub 

И в моем обработчике события я использую:

SetTextEditToNull(CType(sender, TextEdit)) 
Смежные вопросы