What is best way to allow user to pick date from a mobile device from usability prospective?
Are you building WAP page in asp.net? You have a DatePicker control in the mobile toolset. On devices that supports it this will render as a regular date picker (as in regular asp.net) while on more limited devices it will render as a series of selectors where you first select the year, then the month and finally the date. Unless you have a good reason to do otherwise you should use this I think.
I'd detest any form of drop-down, select-list when using a mobile app.
Unfortunately, three separate boxes (for day, month and year) would be equally painful on a MIDP-profile device.
I'd almost suggest using one text box, and do a DateTime.TryParse(String, out DateTime)
to get the result. That allows them to type in any number of formats.. and the bulk of the time it'll work okay.
Also, if you gave them a hint on the form as to the correct formatting (e.g. 12 Mar 2009) then it'd probably be the format they use.