You probably also want to set the TwoDigitYearMax on the CurrentUICulture property of the CurrentThread. For some reason there are two culture objects, one for background threads, and one for UI threads. You only seem to be setting it on the background thread one and not the UI one.
It works in the console because there is no UI, so it uses CurrentThread.CurrentCulture.
EDIT---
If you want to add comments, please use the "Have a question or comment?" link below the solution :)
[cigwork note]
Quote:
Thanks. That works, had tried setting UICulture on its own, but tinkering seems to show that you need to set both culture properties _and_ hand in a cultureinfo instance to the TryParse call.