1

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

使用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;                         
            }           
        }
4

3 回答 3

3

你可以打电话dt.Date.ToShortDateString()

于 2013-01-23T13:50:58.080 回答
2

用方法试试DateTime.ToShortDateString()

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

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

您可以从中了解更多详细信息Custom Date and Time Format Strings

于 2013-01-23T13:51:29.553 回答
2

您有多种选择。

您可以使用类型ToShortDateString()的方法DateTime

lb[i].Text = dt.DayOfWeek + " : " + dt.Date.ToShortDateString()

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

lb[i].Text = dt.DayOfWeek + " : " + dt.Date.ToString("MM/dd/yyyy");
于 2013-01-23T13:55:29.003 回答