2017-03-07 102 views
0

我使用DateTimePicker,我使用此代码来计算年龄:如何通过dateTimePicker的的ValueChanged计算年龄年,月和日C#

private void dateTimePicker2_ValueChanged(object sender, EventArgs e) 
{ 
    // CurrentYear - BirthDate 
    int Age = DateTime.Today.Year - dateTimePicker2.Value.Year; 

    textBox11.Text = Age.ToString(); 
} 

我想计算年龄的年,月,日时DateTimePicker的价值变化。

+0

为什么没有上面的代码工作?详细说明。 –

+0

工作,但我想从计算今天月龄一年>>天>>一个月 –

+0

datepicker的。减去价值的一个月,同样的年龄? – Berkay

回答

1

在你的例子中,它只计算一年,下面的代码会给你年,月和日的年龄。

CODE:

private void dateTimePicker2_ValueChanged(object sender, EventArgs e) 
{ 
    // CurrentYear - BirthDate 
    DateTime startTime = Convert.ToDateTime(dateTimePicker2.Value); 
    DateTime endTime = DateTime.Today; 
    TimeSpan span = endTime.Subtract(startTime); 
    var totalDays = span.TotalDays; 
    var totalYears = Math.Truncate(totalDays/365); 
    var totalMonths = Math.Truncate((totalDays % 365)/30); 
    var remainingDays = Math.Truncate((totalDays % 365) % 30); 
    textBox11.Text = string.Format("{0} year(s), {1} month(s) and {2} day(s)", totalYears, totalMonths, remainingDays); 
} 
+0

感谢>>>>>感谢 –

+0

欢迎您!!!!! – csharpbd