This question already has answers here:
How do I calculate someone's age based on a DateTime type birthday?

(64个答案)


已关闭8年。




我正在努力在母亲节的早晨完成一个快速的“学习示范”计划。我创建了一个文本框供妈妈输入我的生日,并创建一个标签以显示当她单击按钮时我还活着的年,月,日和秒。

以下是我卡住​​的代码部分:
private void button1_Click(object sender, EventArgs e)
{
    DateTime  sonsBirthday = DateTime.Parse(txtSonsBirthday.Text).Date;

    DateTime now =  DateTime.Now;

    TimeSpan timeSpan = now - sonsBirthday;
    timeSpan = Convert.TimeSpan(lblTimeAlive); // blue squiggly under TimeSpan here

正如我在代码中评论的那样,在最后一行的TimeSpan下,我弯弯曲曲地看到了一个蓝色。但我不明白为什么。我究竟做错了什么?

我只是一个学生:所以我有了这个概念,但不习惯于日期时间格式,需要一些帮助。

最佳答案

尝试这样的事情:

private void button1_Click(object sender, EventArgs e)
{
    DateTime  sonsBirthday = DateTime.Parse(txtSonsBirthday.Text).Date;

    DateTime now =  DateTime.Now;

    TimeSpan timeSpan = now - sonsBirthday;
    //timeSpan = Convert.TimeSpan(lblTimeAlive); // old
    lblTimeAlive.Text = timeSpan.ToString(); // new

然后微调timeSpan的字符串格式。

关于c# - 计算在C#WinForm中运行的年数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16504240/

10-12 17:25