格式化TimeSpan字符串

时间:2013-01-23 13:49:52

标签: c# visual-studio-2010 timespan monthcalendar

我有一个小型的C#程序,它有一个日历和7个标签。当我选择日期时,标签会显示该周的日期和日期。

标签是使用TimeSpan字符串填充的,我想要做的就是格式化这个字符串,这样它只显示时间的日期和日期。

这是我到目前为止的代码:

        private void monthCalendar1_DateSelected(object sender, DateRangeEventArgs e)
        {
            DateTime dTime = new DateTime();
            dTime = monthCalendar1.SelectionStart;
            dTime -= new TimeSpan((int)dTime.DayOfWeek, 0, 0, 0 );

            for (int i = 1; i < 8; i++)
            {
                var dt = dTime.AddDays(i);
                lb[i].Text = dt.DayOfWeek + " : " + dt.Date;                         
            }           
        }

3 个答案:

答案 0 :(得分:3)

您可以拨打dt.Date.ToShortDateString()

答案 1 :(得分:2)

尝试使用DateTime.ToShortDateString()方法;

  

将当前DateTime对象的值转换为其等效值   短日期字符串表示。

DateTime dt = DateTime.Now;
label8.Text = dt.Date.ToShortDateString());

您可以从Custom Date and Time Format Strings

了解更多详情

答案 2 :(得分:2)

您有多种选择。

您可以对ToShortDateString()类型

使用DateTime方法
lb[i].Text = dt.DayOfWeek + " : " + dt.Date.ToShortDateString()

或者您可以为ToString("format")方法提供一种格式,以准确指定您希望它的外观。

lb[i].Text = dt.DayOfWeek + " : " + dt.Date.ToString("MM/dd/yyyy");