如下图所示,显示三种颜色交替的下拉框。 




实现方法: 
1.使用System.Web.UI.HtmlControls控件,把它作为服务器控件运行。 
2.在后台为这个select控件绑定数据。 
3.再调用一个自己写的函数为它的没个项目指定颜色。 
实现代码(主要实现部分): 
前台(WebForm1.aspx):
程序代码 程序代码
 
<Select id="Select1" style="WIDTH: 300px" name="Select1" runat="server">
<OPTION selected></OPTION>
</Select>
后台(WebForm1.aspx.cs): 
private void Page_Load(object sender, System.EventArgs e) 

if(!IsPostBack) 

SqlConnection cnn = new SqlConnection(); 
cnn.ConnectionString = "data source=localhost;initial catalog=Northwind;password=;" 
+"persist security info=True;user id=sa;workstation id=APJ062;packet size=4096"; 
string sqlstr = "select Top 10 CustomerID, CompanyName from Customers"; 
cnn.Open(); 
SqlDataAdapter ad = new SqlDataAdapter(sqlstr,cnn); 
DataTable dt = new DataTable(); 
ad.Fill(dt); 
Select1.DataSource = dt; 
Select1.DataTextField = "CompanyName"; 
Select1.DataValueField = "CustomerID"; 
Select1.DataBind(); 
BindSelectColor(Select1); 


//为select控件的项目添加样式 
void BindSelectColor(HtmlSelect select) 

int num = 0; 
string styleString = ""; 
for(int i = 0 ; i < select.Items.Count; i ++ ) 

num = i % 3; 
switch(num) 

case 0: 

styleString = "COLOR: #000099; BACKGROUND-COLOR: #F4FAFF"; 
break; 

case 1: 

styleString = "COLOR: #990000; BACKGROUND-COLOR: #FFFAFB"; 
break; 

case 2: 

styleString = "COLOR: #009900; BACKGROUND-COLOR: #F4FFFA"; 
break; 


select.Items[i].Attributes.Add("style",styleString); 


http://www.sithere.net/article.asp?id=434.html
posted on 2007-05-18 01:33  mbskys  阅读(165)  评论(0)    收藏  举报