且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

[C#][控件]列表控件listbox(一)

更新时间:2022-09-11 12:24:03

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可以多选
    动态设置代码如下:
    ListBox.SelectionMode = SelectionMode.MultiExtended;

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;


本文转自静默虚空博客园博客,原文链接:http://www.cnblogs.com/jingmoxukong/articles/2127256.html,如需转载请自行联系原作者