CheackedListBox.Items.Contains()的疑问。

来源:百度知道 编辑:UC知道 时间:2024/05/29 05:23:44
有如下代码:
if (openFileDialogSelPic.ShowDialog() == DialogResult.OK)
{
foreach (string s in openFileDialogSelPic.FileNames)
{
//Console.WriteLine(s);
//Console.WriteLine(!chklsPics.Items.Contains(s));
if (!chklsPics.Items.Contains(s) && PicInfo.IsImage(s))
{
chklsPics.Items.Add(pic, true);
}
}
}
其中的判断chklsPics.Items.Contains(s) 是在阻止CheackedListBox上的相同元素的显示么?
不管我怎样的调试(改变S的值)这个判断的结果始终为false,请构造一个返回为true的chklsPics.Items.Contains(s)来,小弟不胜感激!
哭啊

是不是代码不存在问题
看你代码要做的应该是把用户选择的所有文件加过滤,不同文件名且为图片的才加到list中
而如果你选择的一批文件中不存在同名文件,那当然是一直为false了

可以单步调试一下你的FileNames,里面的string显示的是哪些
chklsPics里面又总共有哪些,这样就知道为什么总是判断为false了。