1

我正在开发网络应用程序,在此我想在注册表单中添加客户端浏览器上的所有月份值。

我是通过一一添加所有月份的值来手动完成的。我想知道是否可以通过在我的代码中放置一个 for 循环来添加所有月份。

如果可能的话,建议我。

谢谢

4

4 回答 4

5

在这里,您可以在没有循环的情况下执行此操作:

List<string> months = new List<string>() { "January", "Feburary", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" };
dropDownList1.DataSource = months;
dropDownList1.DataBind();

或者如果你坚持使用循环:

List<string> months = new List<string>() { "January", "Feburary", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" };
foreach (string month in months)
{
     dropDownList1.Items.Add(month);
}
于 2012-07-03T09:37:41.077 回答
1

尝试使用此代码

foreach (string name in nameList)
{
    ddl.Items.Add(new ListItem(name));
}
于 2012-07-03T09:36:53.867 回答
1

这是一种选择...

for (int m = 1; m <= 12; m++)
{
   dd.Items.Add(new ListItem(new DateTime(2000, m, 1).ToString("MMMM"), m));
}

更新

我知道这个问题已经“正确回答”,但考虑到@Jamie 的评论,我想我会使用相同的原则添加一个替代方案......

DateTime dt = new DateTime(2000, 1, 1);
for (int m = 0; m < 12; m++)
{
   dd.Items.Add(new ListItem(dt.AddMonths(m).ToString("MMMM"), m));
}
于 2012-07-03T09:38:31.917 回答
0

为什么要在代码中做呢?只需在 aspx 文件中静态添加月份:

<asp:DropDownList Id="ddlMonths" runat="server">
    <asp:ListItem Text="January" Value="1" />
    <asp:ListItem Text="February" Value="2" />
    <asp:ListItem Text="March" Value="3" />
    <asp:ListItem Text="April" Value="4" />
    ...
</asp:DropDownList>

上次检查时,月份变化不大!:)

于 2012-07-03T09:52:10.797 回答