ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ListBox

ListBox

原创 Linux操作系统 作者:fangqm 时间:2011-03-31 21:40:29 0 删除 编辑

它的遍历

只需要遍历ListBox的Items属性即可.

程序块
foreach (string itemValue in listBox1.Items)
{
    textBox1.Text += itemValue;
}

在Web  Form里面不能这样调用,Web Form里的ListBox里的Items是ListItem对象.每个ListItem对象包含Text和Value属性,Text就是我们在网页上看到的文字,Value 就是它代表的值.所以,应该用如下代码遍历一个ListBox的每项:

程序块
foreach (ListItem item in ListBox1.Items)
{
     TextBox1.Text += item.Text;
}

如果是遍历每项的值,就用item.Value即可.

1. 属性列表:
    SelectionMode    组件中条目的选择类型,即多选(Multiple)、单选(Single)
    Rows             列表框中显示总共多少行
    Selected         检测条目是否被选中
    SelectedItem     返回的类型是ListItem,获得列表框中被选择的条目
    Count            列表框中条目的总数
    SelectedIndex    列表框中被选择项的索引值
    Items            泛指列表框中的所有项,每一项的类型都是ListItem
2. 取列表框中被选中的值 
     ListBox.SelectedValue 
3. 动态的添加列表框中的项:
     ListBox.Items.Add("所要添加的项");
4. 移出指定项:
     //首先判断列表框中的项是否大于0
     If(ListBox.Items.Count > 0 )
     {
//移出选择的项
ListBox.Items.Remove(ListBox.SelectedItem);
     }
5. 清空所有项:
     //首先判断列表框中的项是否大于0
     If(ListBox.Items.Count > 0 )
     {
//清空所有项
ListBox.Items.Clear();
     }
6. 列表框可以一次选择多项:
  
     只需设置列表框的属性 SelectionMode="Multiple",按Ctrl可以多选
7. 两个列表框联动,即两级联动菜单
     //判断第一个列表框中被选中的值
     switch(ListBox1.SelectValue)
     {
//如果是"A",第二个列表框中就添加这些:
case "A"
      ListBox2.Items.Clear();
      ListBox2.Items.Add("A1");
      ListBox2.Items.Add("A2");
      ListBox2.Items.Add("A3");
//如果是"B",第二个列表框中就添加这些:
case "B"
      ListBox2.Items.Clear();
      ListBox2.Items.Add("B1");
      ListBox2.Items.Add("B2");
      ListBox2.Items.Add("B3");
     }
8. 实现列表框中项的移位
     即:向上移位、向下移位
     具体的思路为:创建一个ListBox对象,并把要移位的项先暂放在这个对象中。
     如果是向上移位,就是把当前选定项的的上一项的值赋给当前选定的项,然后
     把刚才新加入的对象的值,再附给当前选定项的前一项。
     具体代码为:
      //定义一个变量,作移位用
      index = -1;
      //将当前条目的文本以及值都保存到一个临时变量里面
      ListItem lt=new ListItem (ListBox.SelectedItem.Text,ListBox.SelectedValue);
      //被选中的项的值等于上一条或下一条的值
      ListBox.Items[ListBox.SelectedIndex].Text=ListBox.Items[ListBox.SelectedIndex + index].Text;
      //被选中的项的值等于上一条或下一条的值
      ListBox.Items[ListBox.SelectedIndex].Value=ListBox.Items[ListBox.SelectedIndex + index].Value;
      //把被选中项的前一条或下一条的值用临时变量中的取代
      ListBox.Items[ListBox.SelectedIndex].Test=lt.Test;
      //把被选中项的前一条或下一条的值用临时变量中的取代
      ListBox.Items[ListBox.SelectedIndex].Value=lt.Value;
      //把鼠标指针放到移动后的那项上
      ListBox.Items[ListBox.SelectedIndex].Value=lt.Value;
9. 移动指针到指定位置:
      (1).移至首条
          //将被选中项的索引设置为0就OK了
          ListBox.SelectIndex=0;
      (2).移至尾条
          //将被选中项的索引设置为ListBox.Items.Count-1就OK了
          ListBox.SelectIndex=ListBox.Items.Count-1;
      (3).上一条
          //用当前被选中的索引去减 1
          ListBox.SelectIndex=ListBox.SelectIndex - 1;
      (4).下一条
          //用当前被选中的索引去加 1
          ListBox.SelectIndex=ListBox.SelectIndex + 1;
this.ListBox1.Items.Insertat(3,new   ListItem("插入在第3行之后项","")); 
this.ListBox1.Items.Insertat(index,ListItem)
ListBox1.Items.Insert(0,new   ListItem("text","value"));
 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23109131/viewspace-691413/,如需转载,请注明出处,否则将追究法律责任。

上一篇: c# dictionary的用法
下一篇: backgroundWorker
请登录后发表评论 登录
全部评论

注册时间:2010-03-24

  • 博文量
    297
  • 访问量
    735382