【问题标题】:C# get current system timeC#获取当前系统时间
【发布时间】:2014-03-30 19:53:29
【问题描述】:

所以我有一个程序需要能够获取当前时间。这是一个 winform,我有一个计时器,它在加载 winform 并且间隔为 1000 时启动。每次滴答都会检查时间并在 winform 上设置一个标签以显示该时间。我使用DateTime.Now.Hour; 来确定小时(这正是我所需要的)。我的问题是即使此代码在计时器上,它也只显示 winform 启动的时间并且不更新它。如何获取当天的当前时间和更新时间?

编辑:

这里是代码

//code for hour variable
private int time = DateTime.Now.Hour;

//Code for timer
private void mainTimer_Tick(object sender, EventArgs e)
        {
            //code run every time mainTimer gets a tick
            label1.Text = time.ToString();
        }

【问题讨论】:

  • label1.Text = DateTime.Now.Hour.ToString();
  • 您的代码的问题是您设置了一次字段并且值不会更改。相反,您可以使用我之前代码中的代码或创建属性:
  • private int Time { get { return DateTime.Now.Hour; }}
  • 感谢亚历山大成功了。弄清楚为什么变量也不起作用:)

标签: c# winforms datetime


【解决方案1】:

在您明确设置之前,您的类字段不会被重新评估

你应该这样做:

label1.Text = DateTime.Now.Hour.ToString();

【讨论】:

    【解决方案2】:
        private void Clock(object sender, EventArgs e)
        {
            DateTime dtn = DateTime.Now.Hour;
            label1.Text = dtn.ToString();
        }
    

    然后在上面加上计​​时器标记

    【讨论】:

      猜你喜欢
      • 2011-07-02
      • 2016-07-30
      • 1970-01-01
      • 2011-03-05
      • 1970-01-01
      • 2014-09-10
      • 2016-12-04
      • 2013-03-19
      相关资源
      最近更新 更多