当读取注册表中的文件名时,每有1个注册表条目,就会有3个条目加载到我的组合框中。如果我在注册表中列出了一个文件,我会看到:
组合框值:
c:\file1.txt
<-此处空白
c:\file1.txt
我发现问题出在这段代码中,它点击了'if (previousFiles != null)‘3次。我该如何纠正这个问题呢?
for (int i = 0; i <= 5; i++)
{
Object previousFiles = OurKey.GetValue("Files" + i);
if (previousFiles != null)
{
comboBox1.Items.Add(previousFiles.ToString());
}
}非常感谢周一早上的忧郁!
发布于 2008-10-27 13:28:48
那么,它应该命中if()语句6次,comboBox1.Items.Add()语句3次。合乎逻辑的解释是,真正的问题在于写入注册表项的代码。运行Regedit.exe以找出这些注册表项值中实际存储的内容。
发布于 2008-10-27 12:14:57
只需在第一个comboBox1.Items.Add()之后添加"break;“即可。它将在insert之后离开循环(如果这是您想要的)。
发布于 2008-10-27 12:18:05
看起来问题出在您的GetValue()函数中。另外,在添加到combobox之前,您应该检查null和空字符串。
https://stackoverflow.com/questions/239682
复制相似问题