我在ASP.NET Webforms中有一个下拉列表,我想计算某一年的特定年份。
在第一行中,2002年是当前年份-9,必须是值,9是visibel文本,显示2002年之前的数字。
2002 9
2003 8
2004 7
2005 6
2006 5
2007 4
2008 3
2009 2
2010 1
2011 0
我希望5被预选。我怎么做?首先,我不知道如何添加隐藏值(例如2002年的visibel 9)。
这是我的开始......不远,我知道......
{
int CT = DateTime.Now.Year;
int CT10 = CT - 10;
for (int i = CT10; i <= CT; i++)
{
ddlBirthYear.Items.Add(i.ToString());
}
}
答案 0 :(得分:14)
您可以使用ListItem添加文本和值
ddlBirthYear.Items.Add(new ListItem("text", "value"));
您可以使用
选择ddlBirthYear.SelectedValue = "5";
所以你的循环看起来像这样:
{
int CT = DateTime.Now.Year;
int CT10 = CT - 10;
for (int i = CT10; i <= CT; i++)
{
ddlBirthYear.Items.Add(new ListItem(i.ToString(), (CT-i).ToString()));
}
}
答案 1 :(得分:0)
添加完商品后,请使用SelectedIndex
属性预先选择5年前的价值,如下所示:
ddlBirthYear.SelectedIndex = 5;
SelectedIndex
属性指向列表中项目的索引。
如果要根据其值选择特定年份,则需要使用SelectedValue
属性。
ddlBirthYear.SelectedValue = "2008";