Being in a wheelchair can be very interesting. I went to Disneyworld in a wheelchair after a hike where I broke my foot (I kept hiking on it for another 1000 miles, but it was still broken). Those folks were SO polite....except that they wouldn't talk to me. They'd ask my parents if "I could walk a few steps?" It was really bizarre. I suppose that I was emaciated and disheveled, but I was a lot more sheveled than I had been while I was hiking, and the cast was clearly on my foot, not my head. This society doesn't deal well with wheelchairs.

Although you appear to have touched a nerve, JMC gave you one key piece of advice: Use a dateTimePicker. That will give you a date, which will be FAR easier to work with than textbox data. After all, if you use textbox data, you will have to do LOADS of validation to figure out what the user entered and what to do with it. By using a Date type from a DateTimePicker (you may want two, one for date and a different one for time), then you have all the pieces available, since the Date type has Month, Year, Day, Hour, Minutes, and Second fields, along with a whole lot more. That will get you most of what you want right away.

My comment may have seemed whimsical, but it isn't. You made a whole rule for what to do with 0, but the rule doesn't appear to do anything as written. Therefore, I would guess that the rule was written wrong, and that will have a significant impact on any code. If you are really supposed to treat 0 in a special fashion, we need to know how. Ignoring 0 isn't meaningful, because you can still add it in without having any impact on the overall calculation. The way that I suspect the rule was meant was that if you remove it, and that results in a 'special number' that has some significance, but that won't apply to dates, since the only place you can viably apply it is to the year, and then the only year within living memory would be 2002, where the removal of the 0s would result in 22.