给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);
}
}