资源描述:
《C#如何判断列表框有无重复的项目---唐寒枫》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C#如何判断列表框有无重复的项目
2、唐寒枫C#如何判断列表框有无重复的项目2013年11月27日星期三大家刚开始学习listbox控件的时候可能会遇到一个问题,就是已经学会对列表框进行增删改了,但是对于“增”这一项遇到了一点麻烦,什么麻烦呢?当我们不做过多的操作进行列表框内容添加时往往会插入一些重复值,但是我们又不想插入重复值,我们想列表框里面的内容是独一无二的,但是又不知道怎么去做,现在我们来实现一下:目标功能:对列表框进行内容添加,当插入的内容在列表框中已经存在时不允许插入,并给出相应的提示;当插入的内容在列表框中没有时便插入内容。目标分析:我们首先要确定的一点是
3、必须得有一个判断语句,用来判断要插入的和列表框里面的内容是否重复;因为列表框里面不一定只有一个内容,可能有多个,所以我们应该逐一判断,既然是逐一,那我们就应该借助于循环语句实现。好了,判断语句、循环语句就是我们所利用的核心。目标准备:首先看一下软件运行效果图:添加以下控件控件名NameTextListBoxListtextBox默认值ButtonButton1默认值添加C#如何判断列表框有无重复的项目
4、唐寒枫Button2默认值删除Button3默认值清空Button4默认值↑Button5默认值↓(PS:在这里先说一下,实现这种功能在C#里面有两种方法,一种是我们
5、自己写算法,一种是直接利用C#提供的方法,毋庸置疑,第二肯定是简单的。所以我们把这两种方法都实现一下,首先我们先看看我们自己写算法怎么实现)定义好控件属性,布置好界面之后我们开始写代码:privatevoidbutton1_Click(objectsender,EventArgse){//添加项目#regionif(textBox1.Text==""){MessageBox.Show("还未输入要添加的内容,该操作不能执行","友情提示",MessageBoxButtons.OK,MessageBoxIcon.Information);textBox1.Focus(
6、);//提示完之后接着文本框获取焦点,方便用户操作}else{if(list.Items.Count==0)//如果列表框里面没有任何内容,此时直接添加{list.Items.Add(textBox1.Text);textBox1.Text="";textBox1.Focus();}else{#endregionfor(inti=0;i<=list.Items.Count;i++){if(textBox1.Text==list.Items[i].ToString())//将输入的的内容和列表框原有内容进行判断{MessageBox.Show("已经有相同的内容了",
7、"友情提示",MessageBoxButtons.OK,MessageBoxIcon.Information);textBox1.Text="";textBox1.Focus();break;}elseif(i==list.Items.Count-1)//这一步很关键,如果不加这一个判断会导致重复添加一些不必要的内容。这一步就是为了判断是否遍历了所有内容,因为list.Items[i]是从零开始的,也就是说它的实际判断个数要比count统计的个数少1,所以在这里要减去1C#如何判断列表框有无重复的项目
8、唐寒枫{list.Items.Add(textBox1.Text
9、);textBox1.Text="";textBox1.Focus();break;}}}}}privatevoidbutton2_Click(objectsender,EventArgse){//删除选中项//这里也应该添加一个判断,防止用户还未添加任何内容就点击删除if(list.Text=="")//如果列表框开始运行没有内容时,进行判断{MessageBox.Show("还没有选中要删除的项目或者还没有添加任何内容,不能执行删除","友情提示",MessageBoxButtons.OK,MessageBoxIcon.Information);}elselis
10、t.Items.RemoveAt(list.SelectedIndex);}privatevoidbutton4_Click(objectsender,EventArgse){if(list.SelectedIndex==0
11、
12、this.list.Text=="")//判断是否到达最上面,另外还要检查列表框里面是否有内容,否则也会报错{MessageBox.Show("已经上最上面一项或者还没有添加任何内容","友情提示",MessageBoxButtons.OK,MessageBoxIcon.Information);}elselist.SelectedInd