ListBox的简单应用
代码
1 最近,由于开发一个公司OA系统,就用到了Listbox这样一个控件。
2 (1)listbox 可以用两种方式来进行绑定:
3 一个是直接通过数据库数据来绑定:
4 //Date()---一个访问数据库的方法 它返回的类型的是DateSet
5 ListBox1.DataSource = Date().Tables[0].DefaultView;
6 ListBox1.DataValueField = Date().Tables[0].Columns[0].ColumnName;
7 ListBox1.DataTextField = Date().Tables[0].Columns[0].ColumnName;
8 ListBox1.DataBind();
9 另一个是通过手工添加:
10 <asp:ListBox ID="lb_user_l" runat="server" Width="150px" Height="100px" SelectionMode="Multiple">
11 <asp:ListItem Value="emp_code">员工号</asp:ListItem>
12 <asp:ListItem Value="emp_name">员工姓名</asp:ListItem>
13 <asp:ListItem Value="emp_sex">性别</asp:ListItem>
14 <asp:ListItem Value="nativeplace">籍贯</asp:ListItem>
15 <asp:ListItem Value="workdepartment">工作部门</asp:ListItem>
16 <asp:ListItem Value="workstation">工作岗位</asp:ListItem>
17 <asp:ListItem Value="college">毕业院校</asp:ListItem>
18 <asp:ListItem Value="speciality">专业</asp:ListItem>
19 <asp:ListItem Value="graduateday">毕业时间</asp:ListItem>
20 <asp:ListItem Value="education">最高学历</asp:ListItem>
21 <asp:ListItem Value="worktime">工作时间</asp:ListItem>
22 <asp:ListItem Value="company_email">公司E-Mail</asp:ListItem>
23 <asp:ListItem Value="mobilephone_normal">手机(常用)</asp:ListItem>
24 <asp:ListItem Value="telephone">办公电话</asp:ListItem>
25 <asp:ListItem Value="idcard">身份证号码</asp:ListItem>
26 <asp:ListItem Value="qqnumber">QQ号码</asp:ListItem>
27 </asp:ListBox>
28 (2)绑定数据后就可以用来操作了:
29 比如有两个listbox--下面就是相应的操作
30 //左到右。点击向右按钮(全部)-->>
31 protected void btn_user_l_all_Click(object sender, EventArgs e)
32 {
33 foreach (ListItem li_user_l in lb_user_l.Items)
34 {
35 lb_user_r.Items.Add(new ListItem(li_user_l.Text, li_user_l.Value));
36 }
37 lb_user_l.Items.Clear();
38 }
39 //右到左。点击向左按钮(全部)--<<
40 protected void btn_user_r_all_Click(object sender, EventArgs e)
41 {
42 foreach (ListItem li_user_r in lb_user_r.Items)
43 {
44 lb_user_l.Items.Add(new ListItem(li_user_r.Text, li_user_r.Value));
45 }
46 lb_user_r.Items.Clear();
47 }
48 //左到右。点击向右按钮(可单选也可多选)-->
49 protected void btn_user_l_add_Click(object sender, EventArgs e)
50 {
51 //先遍历把左边选中的移动到右边,接下来就把左边的移除
52 foreach (ListItem li in lb_user_l.Items)
53 {
54 if (li.Selected == true)
55 {
56 lb_user_r.Items.Add(new ListItem(li.Text, li.Value));
57 }
58 }
59 //不能用正序来遍历--用反序的遍历法把左边选择的移除
60 for (int i = lb_user_l.Items.Count - 1; i >= 0; i--)
61 {
62 if (lb_user_l.Items[i].Selected == true)
63 {
64 lb_user_l.Items.Remove(new ListItem(lb_user_l.Items[i].Text, lb_user_l.Items[i].Value));
65 }
66 }
67
68 }
69 //右到左。点击向左按钮(可单选也可多选)--<(同上面的左到右)
70 protected void btn_user_r_add_Click(object sender, EventArgs e)
71 {
72 foreach (ListItem li in lb_user_r.Items)
73 {
74 if (li.Selected == true)
75 {
76 lb_user_l.Items.Add(new ListItem(li.Text, li.Value));
77 }
78 }
79
80 for (int i = lb_user_r.Items.Count - 1; i >= 0; i--)
81 {
82 if (lb_user_r.Items[i].Selected == true)
83 {
84 lb_user_r.Items.Remove(new ListItem(lb_user_r.Items[i].Text, lb_user_r.Items[i].Value));
85 }
86 }
87 }
88
89
90
91