文档章节

asp.net中两个ListBox 左右互相移动,以及上移、下移

深圳大道
 深圳大道
发布于 2016/12/29 15:39
字数 362
阅读 4
收藏 0
<table>
            <tr>
                <td>
                    <asp:ListBox ID="leftListBox" runat="server" Width="200" Height="150" SelectionMode="Multiple">
                        <asp:ListItem Text="广州" Value="广州"></asp:ListItem>
                        <asp:ListItem Text="深圳" Value="深圳"></asp:ListItem>
                        <asp:ListItem Text="东莞" Value="东莞"></asp:ListItem>
                        <asp:ListItem Text="珠海" Value="珠海"></asp:ListItem>
                        <asp:ListItem Text="长沙" Value="长沙"></asp:ListItem>
                        <asp:ListItem Text="武汉" Value="武汉"></asp:ListItem>
                        <asp:ListItem Text="南昌" Value="南昌"></asp:ListItem>
                        <asp:ListItem Text="南京" Value="南京"></asp:ListItem>
                    </asp:ListBox>
                </td>
                <td>
                    <asp:Button ID="btnLeftToRight" runat="server" Text=">" OnClick="btnLeftToRight_Click" /><br />
                    <asp:Button ID="btnRightToLeft" runat="server" Text="<" OnClick="btnRightToLeft_Click" /><br />
                    <asp:Button ID="btnRightUp" runat="server" Text="∧" OnClick="btnRightUp_Click" /><br />
                    <asp:Button ID="btnRightDown" runat="server" Text="∨" OnClick="btnRightDown_Click" /><br />
                </td>
                <td>
                    <asp:ListBox ID="rightListBox" runat="server" Width="200" Height="150" SelectionMode="Multiple">
                    </asp:ListBox>
                </td>
            </tr>
        </table>


 

//右移
    protected void btnLeftToRight_Click(object sender, EventArgs e)
    {
        //定义中间动态存储  
        ArrayList arrRight = new ArrayList();
        //读取左边listbox的item的选中项  
        foreach (ListItem item in this.leftListBox.Items)
        {
            if (item.Selected)
            {
                arrRight.Add(item);
            }
        }
        //执行右移操作  
        foreach (ListItem item in arrRight)
        {
            this.rightListBox.Items.Add(item);
            this.leftListBox.Items.Remove(item);
        }  
    }

    //左移
    protected void btnRightToLeft_Click(object sender, EventArgs e)
    {
        ArrayList arrLeft = new ArrayList();
        //读取右边listboxitem的选中项  
        foreach (ListItem item in this.rightListBox.Items)
        {
            if (item.Selected)
            {
                arrLeft.Add(item);
            }
        }
        //执行左移操作  
        foreach (ListItem item in arrLeft)
        {
            this.leftListBox.Items.Add(item);
            this.rightListBox.Items.Remove(item);
        }  
    }

    //上移
    protected void btnRightUp_Click(object sender, EventArgs e)
    {
        try
        {
            if (rightListBox.SelectedIndex > 0)
            {
                int idx = rightListBox.SelectedIndex;
                var SelectedItem = rightListBox.SelectedItem;
                rightListBox.Items.Insert(rightListBox.SelectedIndex - 1, new ListItem(SelectedItem.Text, SelectedItem.Value));
                rightListBox.Items.RemoveAt(rightListBox.SelectedIndex);
                rightListBox.SelectedIndex = idx - 1;
            }
        }
        catch (Exception)
        {
            Response.Write("<script language =javascript>alert('请选择元素!')</script>");
        }  
    }

    //下移
    protected void btnRightDown_Click(object sender, EventArgs e)
    {
        try
        {
            if (rightListBox.SelectedIndex < rightListBox.Items.Count - 1)
            {
                int idx = rightListBox.SelectedIndex;
                rightListBox.Items.Insert(rightListBox.SelectedIndex, rightListBox.Items[rightListBox.SelectedIndex + 1]);
                rightListBox.Items.RemoveAt(rightListBox.SelectedIndex + 1);
                rightListBox.SelectedIndex = idx + 1;
            }
        }
        catch (Exception)
        {
            Response.Write("<script language =javascript>alert('请选择元素!')</script>");
        }  
    }


 

本文转载自:http://blog.csdn.net/smartsmile2012/article/details/8134298

深圳大道
粉丝 3
博文 877
码字总数 0
作品 0
深圳
架构师
私信 提问
C# winform listBox中的项上下移动

//上移节点 private void btnUP_Click(object sender, EventArgs e) { int lbxLength = this.listBoxMenu.Items.Count;//listbox的长度 int iselect = this.listBoxMenu.SelectedIndex;//lis......

晨曦之光
2012/05/16
1K
0
在GridView内访问特定控件

本文我将为你演示如何访问GridView中的特定控件。我们会看到怎样去访问TextBox控件,DropDownList控件以及ListBox控件。 添加控件到GridView: 你可以简单地使用 选项在GridView控件中增加不...

晨曦之光
2012/03/09
96
0
easyui中的combotree

easyui中的combotree的node怎么实现在静态页面的上移和下移功能 。如下图,当点击上移图标时,使被选中的行向上移动,当点击下移图标时使被选中的行向下移动。

jiangbo578
2014/12/17
105
0
ASP.NET MVC的Model元数据与Model模板:将”ListControl”引入ASP.NET MVC

我们不仅可以创建相应的模板来根据Model元数据控制种类型的数据在UI界面上的呈现方法,还可以通过一些扩展来控制Model元数据本身。在某些情况下通过这两者的结合往往可以解决很多特殊数据的呈...

长平狐
2012/09/04
1K
0
这交互炸了:饿了么是怎么让Image变成详情页的

本文已授权微信公众号:鸿洋(hongyangAndroid)原创首发 晚上叫外卖,打开饿了么,发现推了一个版本,更新以后,点开了个鸡腿,哇,交互炫炸了。 不过还是有槽点。我是无意中才发现可以左右...

wingichoy
2016/12/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

在Javascript中Eval函数的使用

【eval()函数】 JavaScript有许多小窍门来使编程更加容易。 其中之一就是eval()函数,这个函数可以把一个字符串当作一个JavaScript表达式一样去执行它。 举个小例子: var the_unevaled_ans...

花漾年华
23分钟前
3
0
[日更-2019.5.22、23] Android 系统的分区和文件系统(二)--Android 文件系统中的文件

声明 Android系统中有很多分区,每个分区内的文件系统一般都不同的,使用ADB进入系统/目录下可发现挂载这很多的目录,不同的目录中可来自不同的分区及文件系统; 那么,就来分下这些目录里面...

小馬佩德罗
28分钟前
2
0
数组操作相关算法

/*数组的相关的算法操作:1、在数组中找最大值/最小值*/class Test11_FindMax{public static void main(String[] args){int[] array = {4,2,6,8,1};//在数组中找最大...

architect刘源源
今天
4
0
okhttp3 以上版本在安卓9.0无法请求数据的解决方案

应用官方的说明:在 Android 6.0 中,我们取消了对 Apache HTTP 客户端的支持。 从 Android 9 开始,默认情况下该内容库已从 bootclasspath 中移除且不可用于应用。且Android P 限制了明文流量...

chenhongjiang
今天
12
0
简单示例:NodeJs连接mysql数据库

开篇引用网上的说法: 简单的说 Node.js 就是运行在服务端的 JavaScript。Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。Node.js是一个事件驱动I/O服务端JavaScript环境,基于...

李朝强
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部