如何在c#中使用datetimepicker计算年龄?
答案 0 :(得分:6)
严格来说,
TimeSpan age = DateTime.Now - dateTimePicker.Value;
然而,弄清楚某人的“年龄”只会稍微复杂一点。
int years = DateTime.Now.Year - dateTimePicker.Value.Year;
if(dateTimePicker.Value.AddYears(years) > DateTime.Now) years--;
因为年份的长度各不相同,所以你必须这样做,而不是依赖于代表特定时间的TimeSpan
这样的结构(对于确定多少“月”之间的情况也是如此)两个日期,因为几个月的长度从28-31天不等。)
最后一行代码是为了解释今年尚未举办的人生日。
答案 1 :(得分:0)
假设DateTimePicker被称为dtpBirthday:
int age = DateTime.Now.Year - dtpBirthday.Value.Year - (DateTime.Now.DayOfYear < dtpBirthday.Value.DayOfYear ? 1 : 0);