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;

出自 51CTO.COM博客

this.ListBox1.Items.Insertat(3,new   ListItem("插入在第3行之后项",""));

this.ListBox1.Items.Insertat(index,ListItem)

ListBox1.Items.Insert(0,new   ListItem("text","value"));

ASP.NET中添加控件ListBox , 属性设为 Multiple , 则可进行多选.
就以两个listbox之间多选添加项目为例.
两个控件为listboxleft , listboxright 定义了一个动态数组用于中间存储 arrRight .具体代码如下:

//读取右边选中项目
   ArrayList arrRight = new ArrayList();
   foreach(ListItem item in this.ListBoxRight.Items) //按类型listitem读取listbox中选定项
   {
    if(item.Selected) //判断是否选中
    {
     arrRight.Add(item);
    }
   }

//右边移除选定项目 左边添加
   foreach(ListItem item in arrRight)
   {
    this.ListBoxLeft.Items.Add(item);
    this.ListBoxRight.Items.Remove(item);
   }
不能将item的添加删除直接写在if(item.Selected){}内,因为项目remove后会出现错误

Move the Item of ListBox

.aspx

--------------------------------

<asp:ListBox id="ListBox1" style="Z-INDEX: 105; LEFT: 96px; POSITION: absolute; TOP: 344px" runat="server">
    <asp:ListItem Value="a1">a1</asp:ListItem>
    <asp:ListItem Value="a2">a2</asp:ListItem>
    <asp:ListItem Value="a3">a3</asp:ListItem>
   </asp:ListBox>

----------------------------------

.cs

//for 个

private void Button1_Click(object sender, System.EventArgs e){
   if (this.ListBox1.SelectedIndex>=0)
   {
    int i = ListBox1.SelectedIndex;
    if(i>0)
    {
     string values = this.ListBox1.Items[i].Text ;
     this.ListBox1.Items[i].Text = this.ListBox1.Items[i-1].Text ;
     this.ListBox1.Items[i-1].Text = values;
    }
   }

}

ASP.NET中ListBox实现Double Click事件

2007-06-24 13:18

在ASP.NET中的ListBox控件的使用中很多人都发现没有了WINFORM中ListBox的鼠标双击事件

这样就给我们开发带来很多不方便的地方

也看了很多CSDN上用JS来实现双击事件的方法,都是不完整的,最后发现以下方法是最有效的

首先在WEB页面上加入JS脚本和存放ListBox事件的隐藏输入框
再将ASP.NET控件ListBox中加入双击事件声明
<html>

<head>

<script language="javascript">

function ListBox1_DoubleClick() {

document.forms[0].ListBox1Hidden.value = "doubleclicked";

document.forms[0].submit();

}

</script>

</head>

<body>

<form runat="server">

<div>Double click on Listbox

<br />

<asp:ListBox id="ListBox1"

ondblclick="ListBox1_DoubleClick()" runat="server">

<asp:ListItem Value="1">One</asp:ListItem>

<asp:ListItem Value="2">Two</asp:ListItem>

<asp:ListItem Value="3">Three</asp:ListItem>

<asp:ListItem Value="4">Four</asp:ListItem>

</asp:ListBox>

<input type="hidden" name="ListBox1Hidden" />

</div>

<div>click on button

<br />

<asp:Button id="Button1" onclick="Button1_Click"

runat="server" Text="Button"/>

</div>

</form>

</body>

</html>

最后在WEB窗体加载时候执行下列代码就能实现双击ListBox中Item执行一些操作

void Page_Load(Object sender, EventArgs e){

if(Request.Params["ListBox1Hidden"] != null

&& (string)Request.Params["ListBox1Hidden"] == "doubleclicked" {

//This means It was double click

Response.Write("Double Click was fired selected item is "

+ ListBox1.SelectedItem.Text);

//可以在这里加要运行的代码

}

}

listbox控件使用的更多相关文章

  1. asp.net中的ListBox控件添加双击事件

    问题:在Aspx页里的ListBox A中添加双击事件,将选中项添加到另一个ListBox B中,双击ListBox B中的选中项,删除当前选中项 页面: <asp:ListBox ID=&qu ...

  2. WPF中ListBox控件在选择模式(SelectionMode)为Single时仍然出现多个Item被选中的问题

    最近在学习WPF过程中使用到了ListBox控件,在使用时遇到下面的奇怪问题: 代码如下: listBox.Items.Add("绘图"); listBox.Items.Add(& ...

  3. MATLAB GUI程序设计中ListBox控件在运行期间消失的原因及解决方法

    在运行期间,ListBox控件突然消失,同时给出如下错误提示: Warning: single-selection listbox control requires that Value be an ...

  4. MFC中Listbox控件的简单使用

    MFC中listbox控件是为了显示一系列的文本,每个文本占一行.   Listbox控件可以设置属性为: LBS_CHILD   :(默认)子窗口 LBS_Visible :(默认)可视 LBS_M ...

  5. 异步方式向WPF ListBox控件中一条一条添加记录

    向ListBox绑定数据源时,如果数据量过大,可能会使得程序卡死,这是就需要一条一条的向ListBox的数据源中添加记录了,下面是个小Demo: 1.前台代码,就是一个ListBox控件 <Wi ...

  6. asp.net Listbox控件用法

    2008-02-18 19:56 来源: 作者: ListBox(列表框)控件可以显示一组项目的列表,用户可以根据需要从中选择一个或多个选项.列表框可以为用户提供所有选项的列表.虽然也可设置列表框为多 ...

  7. ListBox控件

    主要介绍:自定义数据.绑定数据库数据 前台代码: <div> <asp:ListBox ID=" Width ="100px"> <asp: ...

  8. ASP.NET中ListBox控件的使用

    文章来源:http://www.cnblogs.com/fengzheng126/archive/2012/04/10/2441551.html ListBox控件属性介绍: SelectIndex: ...

  9. c#控件攻略宝典之ListBox控件

    ListBox控件的使用: 1)控件属性 Items SelectedItems SelectioModes 2)数据绑定 DataSoure DisplayMember ValueMenber 3) ...

随机推荐

  1. java 之 建造者模式(大话设计模式)

    建造者模式,在笔者看来比较试用于,定制一个业务流程,而流程的细节又不尽相同,每个细节又必不可少,这时应考虑使用建造者模式. 大话设计模式-类图 先看下笔者写的一个简单的例子. /** * 所有建造过程 ...

  2. ABAP中的AMDP(ABAP-Managed Database Procedures )

    ABAP管理下的数据库存储过程(ABAP-Managed Database Procedure,以下简称AMDP)是在APAP on SAP HANA开发中的一种优化模式.AMDP使用数据库语言书写, ...

  3. Python入门 - 生成随机数

    生成随机数是编程中经常用到的功能,下面讲几种常用的随机函数randint,uniform,  randrange: 一.生成随机整数 randint import random a = random. ...

  4. 03.redis与ssm整合(mybatis二级缓存)

    SSM+redis整合 ssm框架之前已经搭建过了,这里不再做代码复制工作. 这里主要是利用redis去做mybatis的二级缓存,mybaits映射文件中所有的select都会刷新已有缓存,如果不存 ...

  5. Spring Data 整合 ElasticSearch搜索服务器

    一.基于 maven 导入坐标(pom.xml文件) <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi ...

  6. Nginx实现https网站配置

    咱们下面以google代理实现的方式来实现https.注意这里的https与google的https无关. 代码如下.有备注/usr/local/nginx/config/vhost/hk.cn331 ...

  7. lnmp1.3 配置pathinfo---thinkphp3.2 亲测有效

    lnmp1.3环境下配置pathinfo模式试了很多方法,都以失败告终,博主被这个问题困扰了很久,终于解决了!现记录如下: 1.打开php.ini 通常该文件在 /usr/local/php/etc/ ...

  8. 树的平衡 AVL Tree

    本篇随笔主要从以下三个方面介绍树的平衡: 1):BST不平衡问题 2):BST 旋转 3):AVL Tree 一:BST不平衡问题的解析 之前有提过普通BST的一些一些缺点,例如BST的高度是介于lg ...

  9. maven项目pom.xml配置文件依赖

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  10. Ubuntu下deb包的解压、打包、安装、卸载及常用命令参数

    1.首先下载deb包,比如:将其放在 /home/tools/ 根目录下: 2.进入到tools根目录下的终端,输入下面命令创建文件夹extract,并在extract文件夹下创建DEBIAN文件夹 ...