2010-02-24 1 views
1

У меня есть MaskedTextBox с использованием маски "00/00/\2\000", чтобы ограничить ввод в формате XX/XX/20XX, с Text недвижимостью, связанной с MyBindingSource.SomeProperty типа DateTime.Как применить строку форматирования при привязке DateTime к MaskedTextBox?

В последнее время значения с одноразрядным месяцем или днем ​​недавно начали отображаться некорректно. Я ожидаю, что метод ToString() вызывается на значение в какой-то момент привязки данных, и я считаю, что вызов не заполняет месяц/день нулями.

Я пробовал задавать тип формата свойства MaskedTextBox.Text на DateTime в расширенных свойствах связывания данных, но это не помогло.

Как я могу применить ToString("MMddyyyy") при преобразовании объекта DateTime в строку до того, как значение привязано к свойству Text?

ответ

1

Вы можете использовать обязательные и ParseFormat события сделать преобразование себя, как показано на this answer

+0

Спасибо, что сделал это. Но я не могу не задаться вопросом, что изменилось, чтобы вызвать это в первую очередь. Существуют ли какие-либо дизайнерские настройки, которые повлияют на это? (VS2005) – Rob

+1

Свойства IncludePrompt и IncludeLiterals будут хорошим местом для начала. – stuartd