【问题标题】:Format text to date/time format c#将文本格式化为日期/时间格式c#
【发布时间】:2013-05-29 03:48:52
【问题描述】:

我创建了一个带有倒数计时器的 Windows 8 应用。我有计时器的代码,它工作正常,但我不想从 120 秒开始倒计时,而是希望它显示为 2:00 分钟并从那里倒计时。但是因为我使用计时器,所以我不确定如何使用日期/时间属性(如果我能做到的话)。请帮我解决这个问题。

这是我的计时器代码:

 DispatcherTimer timer;
 private int counter = 120;

 public ArcadeMode()
 {
     InitializeComponent();
     timer = new DispatcherTimer();
     timer.Interval = TimeSpan.FromSeconds(1);
     timer.Tick += timer_Tick;
     timer.Start();
  }

  async void timer_Tick(object sender, object e)
  {
     await Time.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Low, () => { Time.Text = counter.ToString(); });
     counter--;
   }

【问题讨论】:

  • 您可以简单地使用模运算符%。几分钟(value / 60) % 60 和几小时value / 360

标签: c# time timer


【解决方案1】:
Time.Text = TimeSpan.FromSeconds(counter).ToString();

如果输入为60,这将为您提供类似00:01:00 的输出

【讨论】:

    【解决方案2】:

    也许有更快/更简洁的方法,但这至少应该以您想要的方式显示计时器(未经测试):

    Time.Text = string.Format("{0}:{1}", (counter / 60), (counter % 60).ToString().PadLeft(2,'0'));
    

    【讨论】:

    • 完美运行,非常感谢!
    • @UserDev6765 如果它工作正常,请给他点赞,这是他应得的。
    【解决方案3】:

    将其转换为 Datetime 实例,以及 .ToString("你想要的格式")

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多