给Dropdownlist的ListItem花花一次,自定义一下颜色
效果:
代码:
.aspx
<
form id
=
"
Form1
"
method
=
"
post
"
runat
=
"
server
"
>
< SELECT id = " MyDropDown " onchange = " document.forms[0].submit() " OnServerChange = " MyDropDown_ServerChanged " runat = " server " NAME = " MyDropDown " />
</ form >
< SELECT id = " MyDropDown " onchange = " document.forms[0].submit() " OnServerChange = " MyDropDown_ServerChanged " runat = " server " NAME = " MyDropDown " />
</ form >
.cs
protected
System.Web.UI.HtmlControls.HtmlSelect MyDropDown;
private void Page_Load( object sender, System.EventArgs e)
{
if ( ! IsPostBack)
{
ArrayList ds = GetData();
foreach (MyData data in ds)
{
ListItem item = new ListItem(data.Text,data.Value);
item.Attributes.Add( " style " , " color: " + data.Color);
MyDropDown.Items.Add(item);
}
}
}
public ArrayList GetData()
{
System.Collections.ArrayList data = new System.Collections.ArrayList();
data.Add( new MyData( " Cnblogs " , " Cnblogs " , " Red " ));
data.Add( new MyData( " -.net " , " -.net " , " Blue " ));
data.Add( new MyData( " --.net " , " --.net " , " Green " ));
data.Add( new MyData( " Overred " , " Overred " , " Red " ));
data.Add( new MyData( " -ooeess " , " -ooeess " , " Blue " ));
data.Add( new MyData( " --ooeess " , " --ooeess " , " Green " ));
return data;
}
public class MyData
{
string _Text;
string _Value;
string _Color;
public string Text{ get { return _Text;}}
public string Value{ get { return _Value;}}
public string Color{ get { return _Color;}}
public MyData( string text, string value, string color)
{
_Text = text;
_Value = value;
_Color = color;
}
}
public void MyDropDown_ServerChanged( object sender, EventArgs e)
{
ListItem selectedItem = MyDropDown.Items[MyDropDown.SelectedIndex];
Response.Write(selectedItem.Text);
MyDropDown.Items.Clear();
ArrayList ds = GetData();
foreach (MyData data in ds)
{
ListItem item = new ListItem(data.Text,data.Value);
item.Attributes.Add( " style " , " color: " + data.Color);
MyDropDown.Items.Add(item);
}
}
private void Page_Load( object sender, System.EventArgs e)
{
if ( ! IsPostBack)
{
ArrayList ds = GetData();
foreach (MyData data in ds)
{
ListItem item = new ListItem(data.Text,data.Value);
item.Attributes.Add( " style " , " color: " + data.Color);
MyDropDown.Items.Add(item);
}
}
}
public ArrayList GetData()
{
System.Collections.ArrayList data = new System.Collections.ArrayList();
data.Add( new MyData( " Cnblogs " , " Cnblogs " , " Red " ));
data.Add( new MyData( " -.net " , " -.net " , " Blue " ));
data.Add( new MyData( " --.net " , " --.net " , " Green " ));
data.Add( new MyData( " Overred " , " Overred " , " Red " ));
data.Add( new MyData( " -ooeess " , " -ooeess " , " Blue " ));
data.Add( new MyData( " --ooeess " , " --ooeess " , " Green " ));
return data;
}
public class MyData
{
string _Text;
string _Value;
string _Color;
public string Text{ get { return _Text;}}
public string Value{ get { return _Value;}}
public string Color{ get { return _Color;}}
public MyData( string text, string value, string color)
{
_Text = text;
_Value = value;
_Color = color;
}
}
public void MyDropDown_ServerChanged( object sender, EventArgs e)
{
ListItem selectedItem = MyDropDown.Items[MyDropDown.SelectedIndex];
Response.Write(selectedItem.Text);
MyDropDown.Items.Clear();
ArrayList ds = GetData();
foreach (MyData data in ds)
{
ListItem item = new ListItem(data.Text,data.Value);
item.Attributes.Add( " style " , " color: " + data.Color);
MyDropDown.Items.Add(item);
}
}