昨天,我就Listview控件中数据添加时出现了一些问题,具体问题记载详情看这篇博文:http://blog.youkuaiyun.com/oversea_zone/article/details/59112700
昨天我一直尝试在解决这个问题,但无果,在朋友的提醒下,我得到了一个新思路,那就是:存储传进来的项Lv可能存有多个值,也就是说:程序将我前几次点击的值一一存储进了Lv这个ListviewItem对象中,从而导致在进行对比时,出现紊乱的情况。
于是就这个问题,我在循环体的两个部分中添加了一句代码,即:Lv=null;意指无论是不是重复项,在处理完后都要讲其清空以便存储下一个传进来的对象。
可是,还是没能够解决问题,仍然出现了数据重复。
今天,我决定重新来解决这个问题。在代码的调试运行中,我发现一个问题,那就是:列表框中已经存在两项主键分别为79和80,当我再次传进80这个项时,系统是默认先将80跟79进行对比,发现不相等即将这个重复项添加了进来。
让我们再看看这段还未修改的代码:
private void GeometrySelcted(object sender, EventArgs e) //填写申报信息代码 第6步:事件处理程序
{
frme = (subEventArgs)e;
ListViewItem lv = new ListViewItem();
soGeoPoint point = (soGeoPoint)frme.subrecordset.GetGeometry();
lv.SubItems[0].Text = frme.subrecordset.GetID().ToString();
lv.SubItems.Add(point.x.ToString());
lv.SubItems.Add(