【问题标题】:Printing ToString on new line在新行上打印 ToString
【发布时间】:2017-02-27 20:24:45
【问题描述】:

我正在尝试制作一个倒计时应用程序,并希望每个时间单位都在单独的一行上。目前,我可以将星期放在自己的行上,但其他单位是 ToString 方法的一部分。 我如何将这些都放到自己的行中?

private void timer1_Tick(object sender, EventArgs e)
    {
        TimeSpan ts = chosenDate.Subtract(DateTime.Now);
        string weeks = (ts.Days / 7).ToString();
        txtTime.Text = string.Format(weeks + " Weeks " + "\n" + ts.ToString("d' Days 'h' Hours 'm' Minutes 's' Seconds'"));

    }

目前打印为:
1 周
5天23小时13分45秒

【问题讨论】:

  • 对换行符执行的操作与在其他需要换行符的地方执行的操作完全相同。
  • 在你想换行的地方添加\n
  • ... 如果不需要,请不要合并字符串:" Weeks " + "\n" 可能只是 "Weeks\n"
  • @LarsTech 这纯粹是审美决定。分开后可能更容易阅读。

标签: c# string winforms format


【解决方案1】:

试试这个

txtTime.Text = $"{ts.Days} Days{Environment.NewLine}{ts.Hours} Hours{Environment.NewLine}{ts.Minutes} Minutes{Environment.NewLine}{ts.Seconds} Seconds";

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-05
    • 2015-06-10
    • 1970-01-01
    • 2014-05-01
    • 1970-01-01
    相关资源
    最近更新 更多