首页 > 解决方案 > 试图根据生日和当前日期确定当前年龄

问题描述

我正在设计一个练习可视化 c# 程序,让您从 dateTimePicker 中选择您的出生日期,并将其与当前日期进行比较,以在文本框中显示您当前的年龄。

我想考虑您选择月份中的哪一天来完善年龄结果,而不是仅仅假设您是某个年龄,因为您出生在那个特定月份。

这是我到目前为止所拥有的:

public void button1_Click(object sender, EventArgs e)
        {

            var birthdayYear = dateTimePicker1.Value.Year;
            var birthdayMonth = dateTimePicker1.Value.Month;
            var birthdayDay = dateTimePicker1.Value.Day;
            var currentYear = DateTime.Now.Year;
            var currentMonth = DateTime.Now.Month;
            var currentDay = DateTime.Now.Day;

            int currentAge = DateTime.Now.Year - dateTimePicker1.Value.Year;

            if (birthdayMonth >= currentMonth)
            {

                currentAge--;

            }


            string currentResult = Convert.ToString(currentAge);

            ageResult.Text = currentResult;
}

标签: c#

解决方案


不要尝试自己实现日期数学。众所周知,日期数学很难正确处理,并且有相当一部分棘手的边缘情况。


推荐阅读