永发信息网

选出listBox中重复的项和不同的项

答案:3  悬赏:70  手机版
解决时间 2021-01-27 22:19
  • 提问者网友:低吟詩仙的傷
  • 2021-01-27 07:44
比如listBox1中有“a,b,c,d,e,f,a,z,c,t,e,a,z”,如何将其中重复的项(a,z,c,e)选出来放入listBox2中;而将只有一个的(b,d,f,t)选出来放入listBox3中。

请大家写出切实可行的完整程序,我弄了很久都达不到效果。谢谢了。如果觉得分不够,可以再加。
最佳答案
  • 五星知识达人网友:猎心人
  • 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);
}
}
}
}
全部回答
  • 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 &lt; 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 &lt; 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); } } }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯