using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Collections; namespace Vocation { public partial class WebForm1 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { ArrayList a = new ArrayList(); a.Add("asp.net"); a.Add("JavaScript"); a.Add("CSS"); a.Add("Html"); a.Add("C#"); ListBox2.DataSource = a; ListBox2.DataBind(); } } protected void Button1_Click(object sender, EventArgs e) { foreach (ListItem item in ListBox2.Items) { ListBox3.Items.Add(item); } ListBox2.Items.Clear(); } protected void Button3_Click(object sender, EventArgs e) { foreach (ListItem item in ListBox3.Items) { ListBox2.Items.Add(item); } ListBox3.Items.Clear(); } protected void Button2_Click(object sender, EventArgs e) { //左边------右边 if (ListBox2.SelectedIndex != -1) { foreach (ListItem item in ListBox2.Items) { if (item.Selected) { ListBox3.Items.Add(item); } } } for (int index = ListBox2.Items.Count-1; index>=0; index--) { if (ListBox2.Items[index].Selected) { ListBox2.Items.RemoveAt(index); } } } protected void Button4_Click(object sender, EventArgs e) { if (ListBox3.SelectedIndex != -1) { foreach (ListItem item in ListBox3.Items) { if (item.Selected) { ListBox2.Items.Add(item); } } } for (int index = ListBox3.Items.Count - 1; index >= 0; index--) { if (ListBox3.Items[index].Selected) { ListBox3.Items.RemoveAt(index); } } } protected void Button5_Click(object sender, EventArgs e) { Label1.Text = "你选择的科目为:"; foreach(ListItem item in ListBox3.Items) { Label1.Text+=item.Text +" "; } } } }
值得注意的是在WEB控件中,listbox的selecteditem并不是指的当前选定的值,而是最小值,这点与winform不同。所以在上面没有用selecteditem来取值,而是遍历后用item.text