样式如下:

实现的代码一:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Collections;

namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//实现">"功能,将左边一项移到右边
private void button1_Click(object sender, EventArgs e)
{
//listBox1.Items.RemoveAt(listBox1.SelectedIndex);
//listBox2.Items.Add(listBox1.SelectedIndex.ToString());
//获取listbox1的所有选中的项
if (this.listBox1.SelectedItems.Count > 0)
{
string list1Remove = this.listBox1.SelectedItem.ToString();
//判断是否添加到listbox2
if (!this.listBox2.Items.Contains(list1Remove))
{
//添加人员到listbox2中
this.listBox2.Items.Add(list1Remove);
//移除listbox1中
this.listBox1.Items.Remove(list1Remove);
}
}
}

//实现"<"功能,将右边一项移到左边
private void button3_Click(object sender, EventArgs e)
{
if (this.listBox2.SelectedItems.Count > 0)
{
string list2Remove = this.listBox2.SelectedItem.ToString();
//判断是否添加到listbox2
if (!this.listBox1.Items.Contains(list2Remove))
{
//添加人员到listbox2中
this.listBox1.Items.Add(list2Remove);
//移除listbox1中
this.listBox2.Items.Remove(list2Remove);
}
}
}

//实现">>"功能,将左边所有项移到右边
private void button2_Click(object sender, EventArgs e)
{
listBox2.Items.AddRange(listBox1.Items);
listBox1.Items.Clear();
}

//实现"<<"功能,将右边所有项移到左边
private void button4_Click(object sender, EventArgs e)
{
listBox1.Items.AddRange(listBox2.Items);
listBox2.Items.Clear();
}

private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{

}

private void listBox2_SelectedIndexChanged(object sender, EventArgs e)
{

}

private void textBox1_TextChanged(object sender, EventArgs e)
{

}

//将文本添加到左边listBox中
private void button5_Click(object sender, EventArgs e)
{
if (textBox1.Text != "")
{
listBox1.Items.Add(textBox1.Text.ToString());
}

}
//删除左边listBox某一项
private void button6_Click(object sender, EventArgs e)
{
if (textBox1.Text != "")
{
for (int i = 0; i < listBox1.Items.Count; i++)
{
if (textBox1.Text == listBox1.Items[i].ToString())
{
listBox1.Items.RemoveAt(i);
i--;
}
}
}
}
//删除左边listBox所有项
private void button7_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
}
}

}


实现的代码二:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace LisBox控件的操作
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{

}

private void button3_Click(object sender, EventArgs e)
{
listBox1.Items.AddRange(listBox2.Items);
listBox2.Items.Clear();

}

private void listBox2_SelectedIndexChanged(object sender, EventArgs e)
{

}

//实现>功能
private void button1_Click(object sender, EventArgs e)
{
//获取listbox1里面的值
if (this.listBox1.SelectedItems.Count > 0)
{
string checkPeople = this.listBox1.SelectedItem.ToString();
if (!this.listBox2.Items.Contains(checkPeople))
{
//添加人员到listbox2中
this.listBox2.Items.Add(checkPeople);
//移除listbox1中
this.listBox1.Items.Remove(checkPeople);
}
}
else {
MessageBox.Show("该人员已经转移过");
}

}

//实现<功能
private void button7_Click(object sender, EventArgs e)
{
//获取listbox2里面的值
if (this.listBox2.SelectedItems.Count > 0)
{
string checkPeople = this.listBox2.SelectedItem.ToString();
if (!this.listBox1.Items.Contains(checkPeople))
{
//添加人员到listbox1中
this.listBox1.Items.Add(checkPeople);
//移除listbox2中
this.listBox2.Items.Remove(checkPeople);
}
}
else
{
MessageBox.Show("该人员已经转移过");
}
}

private void Form1_Load(object sender, EventArgs e)
{

}

//实现>>功能
private void button2_Click(object sender, EventArgs e)
{
listBox2.Items.AddRange(listBox1.Items);
listBox1.Items.Clear();
}

//删除左边的所有项
private void button6_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
}

//将文本加到左面的listBox
private void button4_Click(object sender, EventArgs e)
{
if (textBox1.Text != "") {
listBox1.Items.Add(textBox1.Text);
textBox1.Clear(); //清除textbox的里面的值
}
}

//删除左面选择的一项
private void button5_Click(object sender, EventArgs e)
{
if (this.listBox1.SelectedItems.Count > 0)
{
this.listBox1.Items.RemoveAt(this.listBox1.SelectedItems.Count);
}
else {
MessageBox.Show("您还没有选择,请选择一项进行操作");
}
}

private void toolStripButton1_Click(object sender, EventArgs e)
{

}

private void bindingNavigatorAddNewItem_Click(object sender, EventArgs e)
{

}
}
}

C#学习笔记:ListBox控件的用法的更多相关文章

  1. Python:GUI之tkinter学习笔记1控件的介绍及使用

    相关内容: tkinter的使用 1.模块的导入 2.使用 3.控件介绍 Tk Button Label Frame Toplevel Menu Menubutton Canvas Entry Mes ...

  2. iOS学习笔记——基础控件(上)

    本篇简单罗列一下一些常用的UI控件以及它们特有的属性,事件等等.由于是笔记,相比起来不会太详细 UIView 所有UI控件都继承于这个UIView,它所拥有的属性必是所有控件都拥有,这些属性都是控件最 ...

  3. Android笔记---常用控件以及用法

    这篇文章主要记录下Android的常用控件以及使用的方法,Android 给我们提供了大量的UI控件,合理地使用这些控件就可以非常轻松地编写出相当不错的界面,这些是Android学习的基础,没有什么业 ...

  4. ios 学习笔记之控件属性

    1.文本框 设置密码属性:Secure Text Entry 勾选; 设置文本框带清除属性: Clear Button =Is always visible;  默认是不带清除属性:Never app ...

  5. jQuery学习笔记(控件位置定位、尺寸大小的获取等)

    想做一个幽灵按钮出来,效果大概如下图: 当点击按钮的时候,会有四根线条从四个方向飞入,经历从“无-有-无”的闪入过程. 那么我的设计想法是,先在HTML中定义一个按钮,然后在jQuery中设计按钮点击 ...

  6. 学习笔记-menusript控件中条目权限设置使用

    在做一个小程序的时候,偶然发现了使用menusript控件做权限设置的方法,仅此标记,以供参考. 首先创建一个实例:testuseright.sln, 在项目文件里创建两个窗体:Form1.cs和us ...

  7. IOS 学习笔记(7) 控件 分隔栏控件(UISegmentControl)的使用方法

    分隔栏控件的系统默认式样一共有3种,分别是“普通式样”,"边框式样","条状式样" 分隔栏控件中有一个momentary属性,默认时NO.当开发者配置成YES时 ...

  8. IOS 学习笔记(6) 控件 文本域(UITextField)的使用方法

    UITextField控件的诸多特性都和UITextView相似,比如成为输入文本焦点时键盘自动显示,支持长按弹出动作选项,能够接收输入事件(开始输入,修改内容,结束输入和点击回车等). 1.特有的特 ...

  9. IOS 学习笔记(5) 控件 文本视图(UITextView)的使用方法

    相对于UILabell所支持的较短文本内容,UITextView对于长文本的支持更好.UITextView能够以滚动的方式全部浏览到长文本,并且就像UILabel那样,从ISO6,他也提供了对NSAt ...

随机推荐

  1. Xamarin简介

    简介 简单来说,Xamarin提供了使用C#完成iOS,Android和Windows Phone三个移动平台开发的可能性Xamarin包括Xamarin.Andriod.Xamarin.IOS.Xa ...

  2. SourceTree 免注册使用

    sourcetree安装的时候,需要注册.但是这个注册需要FQ,所以我们需要绕过注册 1. 找到目录:C:\Users\用户\AppData\Local\Atlassian\SourceTree 2. ...

  3. 批量删除C和C++注释

    使用Python语言 ,实现批量删除C/C++类型注释1.目前支持去掉.h .hpp .c .cpp .java 这些以//或/**/为注释符的源文件 2.支持递归遍历目录 3.当前版本为Python ...

  4. Spring Boot 专题

    Spring is a very popular Java-based framework for building web and enterprise applications. Unlike m ...

  5. WPF编游戏系列 之七 动画效果(2)

    原文:WPF编游戏系列 之七 动画效果(2)        上一篇已经对关闭窗口图标进行了动画效果处理,本篇将对窗口界面的显示和关闭效果进行处理.由于所有的动画效果都是针对窗口界面的Canvas,所以 ...

  6. EF 两种删除方式的比较

    UserInfo user = from u in context.UserInfo where u.Id=343 select u; context.UserInfo.Remove(user); 用 ...

  7. Bootstrap按钮组 按钮工具栏 嵌套

    @{    Layout = null;}<!DOCTYPE html><html><head>    <meta name="viewport&q ...

  8. WPF中INotifyPropertyChanged用法与数据绑定

    在WPF中进行数据绑定的时候常常会用到INotifyPropertyChanged接口来进行实现,下面来看一个INotifyPropertyChanged的案例. 下面定义一个Person类: usi ...

  9. C#原子性运算 interlocked.compareExchanged

    缘起: 假设有一个类myClass, myclass里有一个count属性. 在多线程的环境下 每个线程中 直接使用count++,  如果两个线程并行执行时, 两个线程中的一个的结果会被覆掉, 非线 ...

  10. Linux下C语言RPC(远程过程调用)编程实例

    在查看libc6-dev软件包提供的工具(用 dpkg -L libc6-dev 命令)的时候,发现此软件包提供了一个有用的工具rpcgen命令.通过rpcgen的man手册看到此工具的作用是把RPC ...