比如listBox1中有“a,b,c,d,e,f,a,z,c,t,e,a,z”,如何将其中重复的项(a,z,c,e)选出来放入listBox2中;而将只有一个的(b,d,f,t)选出来放入listBox3中。
请大家写出切实可行的完整程序,我弄了很久都达不到效果。谢谢了。如果觉得分不够,可以再加。
选出listBox中重复的项和不同的项
答案:3 悬赏:70 手机版
解决时间 2021-01-27 22:19
- 提问者网友:低吟詩仙的傷
- 2021-01-27 07:44
最佳答案
- 五星知识达人网友:猎心人
- 2021-01-27 07:49
这么写就行了
private void button1_Click(object sender, EventArgs e)
{
string item = "";
int times = 0;
for (int i = 0; i < listBox1.Items.Count; i++)
{
item = listBox1.Items[i].ToString();
times = 0;
for (int j = 0; j < listBox1.Items.Count ; j++)
{
if (item == listBox1.Items[j].ToString())
{
times++;
}
}
if (times == 1)
{
if (!listBox3.Items.Contains(item))
{
listBox3.Items.Add(item);
}
}
else
{
if (!listBox2.Items.Contains(item))
{
listBox2.Items.Add(item);
}
}
}
}
private void button1_Click(object sender, EventArgs e)
{
string item = "";
int times = 0;
for (int i = 0; i < listBox1.Items.Count; i++)
{
item = listBox1.Items[i].ToString();
times = 0;
for (int j = 0; j < listBox1.Items.Count ; j++)
{
if (item == listBox1.Items[j].ToString())
{
times++;
}
}
if (times == 1)
{
if (!listBox3.Items.Contains(item))
{
listBox3.Items.Add(item);
}
}
else
{
if (!listBox2.Items.Contains(item))
{
listBox2.Items.Add(item);
}
}
}
}
全部回答
- 1楼网友:罪歌
- 2021-01-27 09:22
弄了很久。。。LZ至于吗。。。
for(listBox1中的每一项)
{
查看listBox3中有没有:没有放入listBox3
有则从listBox3中移除,查看listBox2中有没有,没有加入listBox2
}
- 2楼网友:舊物识亽
- 2021-01-27 08:08
搜索 如果该项的value已存在 不add就行了
我想你是绑定的 那是不可能的 那你就别查重复数据
你是想用我说的第一种方法,还是第二种方法
刚才的代码没考虑刚开始的问题 现在加上了
for (int i = 0; i < dslistbox.tables[0].rows.count; i++)
{
string orgname = dslistbox.tables[0].rows[0][i].tostring();
if (this.lstnameright.items.count == 0)
{
this.lstnameright.items.add(orgname);
}
else
{
for (int j = 0; j < this.lstnameright.items.count; j++)
{
string xx = this.lstnameright.items[j].text.tostring();
if (xx.equals(orgname))
{
break;
}
if (j == this.lstnameright.items.count - 1)
this.lstnameright.items.add(orgname);
}
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯