2017-03-07 100 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