[英]Visual Studio 2012 c# ListView issue - kinda strange one
我会尽力解释。
我有一个Visual Studio c#格式的ListView,其中包含一个填充它的函数。 当我最近尝试通过添加列来更新该ListView时,它只显示了以前填充的列。 然后,带来更大的惊喜。 当我更改函数文本以稍有不同地填充“旧”列时,只是为了确保它能正常工作(例如,将字符串“ test string”添加到填充列的列中),什么都没发生-它只是保留了旧方法。 之后,我完全擦除了填充函数主体,括号内没有留下任何内容,即使我刚刚完全擦除了函数,列表视图仍然填充了数据,就像它称为函数的原始版本一样。 让我感到困惑。 无法通过Google进行类似操作。 更有趣的东西-我将MessageBox放入函数主体只是为了确保“新”函数被调用。 是的,正在显示MessageBox,因此它实际上接受该功能更改。 显示代码:
private void populateMissionList()
{
this.listView1.Items.Clear();
List<MisijaDTO> misije = MisijaDAO.ocitajSve();
foreach (MisijaDTO mission in misije)
{
string idmisije = "" + mission.Id;
ListViewItem stavka = new ListViewItem(idmisije);
stavka.SubItems.Add(mission.Naziv); // "old" column
stavka.SubItems.Add(mission.Datum + " test string"); //"old" column, but won't show newly added "test string"
if (mission.Uspjesna){
stavka.SubItems.Add("Uspješna"); // "new" column, won't be shown...
MessageBox.Show("282 true"); //... but this text box is shown
}
else {stavka.SubItems.Add("Neuspješna");MessageBox.Show("282 false");}
listView1.Items.Add(stavka);
}
}
我最好的猜测是为什么发生的-我之前已经从表单中剪切了该listView,将其粘贴到另一个表单(用作备份)上,然后从备份表单中复制了它,然后将其粘贴回到了原始表单中。 我想ListView某种程度上被旧的函数定义所困扰,但我无法解决它。 尝试执行以下操作:重命名ListView,重命名填充函数,清理解决方案,重建解决方案,关闭并重新打开Visual Studio ...无济于事。 这也不是数据库问题,因为它将新的数据库导入读取到ListView中,但仅限于“旧”列集,因为它无法识别我粘贴回的ListView。 剪切/粘贴/复制/粘贴后,ListView名称保持不变,因此我猜也没有问题。
如果您需要更多信息,我们将很高兴为您提供。
在.designer.cs文件中查找填充了“列集合”的位置。 您可能需要在其中添加另一列...。
对于那些花费宝贵时间阅读本主题的人,我深表歉意。 没有任何错误或其他东西,但是我忽略了一些与我的函数相关的代码,并且分别填充了旧方法。 似乎现在一切正常。
好的一面是我最终注册了Stack Overflow :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.