2

我想在下拉列表中显示一周的日期,默认为今天的日期。我怎样才能做到这一点?

我还被告知“使用类 DateTime.Now,并将数据值转换为字符串”。

任何帮助表示赞赏!

4

3 回答 3

4

这适用于我的 asp.net 项目

DropDownList1.Items.Add(DateTime.Now.ToString());

这个在我的组合框中

comboBox1.Items.Add(DateTime.Now);

我不完全确定你的问题。以下是你想做的吗?

for (int i = 0; i < 7; i++)
{
    DropDownList1.Items.Add(DateTime.Now.AddDays(-i).ToString());
}
于 2013-04-08T03:58:38.833 回答
2

试试这个:

 //Get Start And End
            int delta = Convert.ToInt32(DateTime.Now.DayOfWeek);
            delta = delta == 0 ? delta + 7 : delta;
            DateTime moday = DateTime.Now.AddDays(1 - delta);
            DateTime sunday = DateTime.Now.AddDays(7 - delta);
            //Get Date Range
            List<DateTime> allDates = new List<DateTime>();
            //Add To Your List
            for (DateTime i = moday; i <= sunday; i = i.AddDays(1))
            {
                DropDownList1.Items.Add(i.Date.DayOfWeek);
            }
            //Select Today Name
            DropDownList1.SelectedItem = DateTime.Today.Date.DayOfWeek;

已编辑

对于这种格式(mm/dd/yyy)

//Add To Your List
            for (DateTime i = moday; i <= sunday; i = i.AddDays(1))
            {
                comboBox1.Items.Add(i.Date.ToShortDateString());
            }
            //Select Today Date(dd/mm/yyy)
            comboBox1.SelectedItem = DateTime.Today.ToShortDateString();
于 2013-04-08T04:26:41.710 回答
1

你可以把它放在加载事件上

    protected void Page_Load(object sender, EventArgs e)
    {
        for (int i = 0; i < 7; i++)
        {
            DropDownList1.Items.Add(DateTime.Now.AddDays(-i).ToString());
        }


    }
于 2013-04-08T04:19:38.283 回答