Take alone the drift of the topic to the real problem. It's a bad sign on its own, that you come here with a detail problem instead of the real problem.
The ideal solution to your idea to show the format inside of the textbox would let it stay in there when the date is typed and the digits of the date would replace the format mask just partially. That's impossible to do with just one forecolor and would be much work with a label you keep in front of the textbox, a label in the back would be semi ideal, as it still would make the entered digits less readable, even if they are in front and in black instead of light grey. Just think about how unreadable labels get due to the cleartype bug washing up the edges of letters.
The ideal solution would overlay the mask with the partly entered value, which would need quite some code, though, because we can only work with a label on top of the textbox. You can make it a little simpler by using a monospaced font, but that's still quite some effort to make the perfect overlay.
I agree with the need of a simple solution, and that would be either the datepicker, but that's also normally adding some more effort, a simple label aside or above the textbox showing the format in its caption or the format displayed within the textbox, vanishing when you enter it. I already said I partially disagree with Craigs criticism about the placeholder text, the advantage of needing less space is better then the disadvantage to not see the placeholder during entry. In the normal case the placeholder text is a tip text and not a input mask anyway, it would be quite useless to let it stay in the control, even if it would be overwritten partially.
A mainly blank form is well designed, as it can be a resting place for the eye and the demand of users to make use of any available space and put in this and that display or input in there is making me sick. Therefore I really like the idea of the placeholder, even in forms having lots of space for labels aside of controls. It's a matter of nil effort to have popups or other form parts coming up just in time and users are even used to this concept when it comes to comboboxes or datepickers or file pickers. So overall gaining space by not needing a label is a good idea to me, not a bad idea. There's one little detail, that might be better: The placeholder text could stay as long as you just put the text cursor in the box and not yet start typing, but it's merely getting used to read a control before tabbing into it. The problem of a control asking for a login id when asking for an email is not a problem of where and when this placeholder, tip text or label caption is displayed, it's a separate problem about the semantics and value of the tip text. The criticism would stay, if you write it as normal label caption aside of the entry textbox, wouldn't it?
Bye, Olaf.