asp.net

位置:IT落伍者 >> asp.net >> 浏览文章

在ASP.NET中用三个DropDownList控件应用


发布日期:2022年03月07日
 
在ASP.NET中用三个DropDownList控件应用

aspx页面上有三个DropDownList控件

DropDownList 表示年DropDownList表示月DropDownList表示天

注意用将这三个DropDownList控件的AutoPostBack属性设为True

用户可以方便地选择年月日并且每月的日期会随着用户选择不同的年月而发生相应的变化

其后台cs文件代码如下

private void Page_Load(object sender SystemEventArgs e)

{

DateTime tnow=DateTimeNow;//现在时间

ArrayListAlYear=new ArrayList();

int i;

for(i=;i<=2010;i++)

AlYear.Add(i);

ArrayListAlMonth=new ArrayList();

for(i=1;i<=12;i++)

AlMonth.Add(i);

if(!this.IsPostBack )

{

DropDownList1.DataSource=AlYear;

DropDownList1.DataBind();//绑定年

//选择当前年

DropDownList1.SelectedValue=tnow.Year.ToString();

DropDownList2.DataSource=AlMonth;

DropDownList2.DataBind();//绑定月

//选择当前月

DropDownList2.SelectedValue=tnow.Month.ToString();

int year,month;

year=Int32.Parse(DropDownList1.SelectedValue);

month=Int32.Parse(DropDownList2.SelectedValue);

BindDays(year,month);//绑定天

//选择当前日期

DropDownList3.SelectedValue=tnow.Day.ToString();

}

}

//判断闰年

private bool CheckLeap(int year)

{

if((year%4==0)&&(year%100!=0)||(year%400==0))

return true;

else return false;

}

//绑定每月的天数

private void BindDays( int year,int month)

{ int i;

ArrayListAlDay=new ArrayList();

switch(month)

{

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12:

for(i=1;i<=31;i++)

AlDay.Add(i);

break;

case 2:

if (CheckLeap(year))

{for(i=1;i<=29;i++)

AlDay.Add(i);}

else

{for(i=1;i<=28;i++)

AlDay.Add(i);}

break;

case 4:

case 6:

case 9:

case 11:

for(i=1;i<=30;i++)

AlDay.Add(i);

break;

}

DropDownList3.DataSource=AlDay;

DropDownList3.DataBind();

}

//选择年

private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e)

{

int year,month;

year=Int32.Parse(DropDownList1.SelectedValue);

month=Int32.Parse(DropDownList2.SelectedValue);

BindDays(year,month);

}

//选择月

private void DropDownList2_SelectedIndexChanged(object sender, System.EventArgs e)

{

int year,month;

year=Int32.Parse(DropDownList1.SelectedValue);

month=Int32.Parse(DropDownList2.SelectedValue);

BindDays(year,month);

}

上一篇:ASP.NET 2.0的Web Part Framework

下一篇:ASP.NET中基类Page