Мне удалось воспроизвести проблему, но в настоящее время, похоже, нет решения. Что вам нужно, так это связывающая панель инструментов навигатора в верхней части формы с текстовым полем с привязкой к данным с любой маской (неважно какая). Когда вы запускаете форму, изначально замаскированное текстовое поле будет принимать данные очень хорошо. Однако если вы нажмете кнопку «AddNewItem» (кнопка со знаком плюс) на панели инструментов навигатора привязки, это приведет к тому, что текстовое поле с маской удалит все предыдущие нули при попытке ввести дату. Кажется, все маски сделают это. Восстановление формы тоже не исправит. Это происходит каждый раз, когда вы нажимаете кнопку «AddNewItem» и затем вводите данные в любое отформатированное текстовое поле с маской.
Теперь, когда я точно выяснил, как воспроизвести проблему, мы надеемся, что кто-то более осведомленный может прийти, чтобы выяснить, как обойти это. Кажется, что это глюк в VB. Не знаю, является ли это фактическим «ответом», но я дал четкий путь к поиску решения. У меня просто нет ноу-хау, чтобы зайти так далеко.
(Обновление: я обнаружил, что он делает это со всеми масками, а не только с "короткими датами")