Очистить обязательное / не пустое поле - PullRequest
1 голос
/ 15 марта 2012

У меня проблема со связанным текстовым полем. Поле обязательно и не допускает Ноль в базе данных.

Это вызывает у меня проблему, когда я хочу очистить текстовое поле. Например, если я ввел что-то и удалил это, то вступает в силу правило проверки и я не могу покинуть поле. Я могу покинуть поле, только если нажму ESC, поэтому верните его в исходное (неизменное) состояние.

Я попытался установить для поля Nothing и DefaultValue в событии _After-/_BeforeUpdate(), но это не сработало.

Спасибо за вашу помощь.

Ответы [ 2 ]

0 голосов
/ 11 ноября 2014

Я тоже встречался с этой проблемой. Я нахожу Me.Undo работ, в которых Me относится к форме.

Если вам нужно выполнить какую-либо связанную операцию с Undo, например, чтобы удалить файл с жесткого диска, как я, используйте событие Form_Undo.

0 голосов
/ 16 марта 2012

В итоге я решил, что благодаря комментариям я использовал несвязанное текстовое поле, а затем скопировал правило проверки из базы данных в форме On Load.

Private Sub Form_Load()
    Me.MyTextbox.ValidationRule = CurrentDb.TableDefs("SomeTable").Fields("SomeColumn").ValidationRule & " Or Is Null"
    Me.MyTextbox.ValidationText = CurrentDb.TableDefs("SomeTable").Fields("SomeColumn").ValidationText
End Sub

Примечание. Я добавил«Или является пустым» для правила, иначе я бы застрял в текстовом поле, если я удалил свой ввод.Правило валидации в базе данных:> = 1 И <= 10 </p>

Надеюсь, это кому-нибудь поможет:)

...