如下图所示,显示三种颜色交替的下拉框。
实现方法:
1.使用System.Web.UI.HtmlControls控件,把它作为服务器控件运行。
2.在后台为这个select控件绑定数据。
3.再调用一个自己写的函数为它的没个项目指定颜色。
实现代码(主要实现部分):
前台(WebForm1.aspx):
<SELECTid="Select1"style="WIDTH:300px"name="Select1"runat="server">
<OPTIONselected></OPTION>
</SELECT>
后台(WebForm1.aspx.cs):
privatevoidPage_Load(objectsender,System.EventArgse)
{
if(!IsPostBack)
{
SqlConnectioncnn=newSqlConnection();
cnn.ConnectionString="datasource=localhost;initialcatalog=Northwind;password=;"
+"persistsecurityinfo=True;userid=sa;workstationid=APJ062;packetsize=4096";
stringsqlstr="selectTop10CustomerID,CompanyNamefromCustomers";
cnn.Open();
SqlDataAdapterad=newSqlDataAdapter(sqlstr,cnn);
DataTabledt=newDataTable();
ad.Fill(dt);
Select1.DataSource=dt;
Select1.DataTextField="CompanyName";
Select1.DataValueField="CustomerID";
Select1.DataBind();
BindSelectColor(Select1);
}
}
//为select控件的项目添加样式
voidBindSelectColor(HtmlSelectselect)
{
intnum=0;
stringstyleString="";
for(inti=0;i<select.Items.Count;i++)
{
num=i%3;
switch(num)
{
case0:
{
styleString="COLOR:#000099;BACKGROUND-COLOR:#F4FAFF";
break;
}
case1:
{
styleString="COLOR:#990000;BACKGROUND-COLOR:#FFFAFB";
break;
}
case2:
{
styleString="COLOR:#009900;BACKGROUND-COLOR:#F4FFFA";
break;
}
}
select.Items[i].Attributes.Add("style",styleString);
}
}