metin kutusundaki tarih formatını kontrol etmen gerekiyor. db deki culture tipine bağlı olarak tarih kısmı değişebilir.Ona bak nasıl bir şekilde kabul ediyor. örnek gg.aa.yyyy ya da aa.gg.yyyy ya da gg/aa/yyyy neyse artık ondan sonra
istersen maskeditbox tarzı bir kontrol kullanarak kullanıcıya bu formatta girdirmesini sağlayabilrsin ya da rawonun dediği gibi datetimepicker. Bunun formatı da uymuyor diyorsan

String.Format("{0:d/M/yyyy HH:mm:ss}", dt); // "9/3/2008 16:05:07"

şu şekilde çevirebilirsin. oradki dt datetime türünde. datatimepicker ın value özelliği de datetime türünde olması gerek.

farklı çevrimler içn buraya bakabilirsin

http://www.csharp-examples.net/string-format-datetime/