首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

ListView疑问?该如何处理

2012-03-06 
ListView疑问??部分代码://删除当前DTU的信息记录publicvoidremoveListView(Clientclient){if(clients.Con

ListView疑问??
部分代码:

  //删除当前DTU的信息记录
                public   void   removeListView(Client   client)
                {
                       
                        if   (clients.Contains(client.Rtua))
                        {
                                clients.Remove(client.Rtua);
                                listView1.Items.RemoveByKey(client.Rtua);
                                //listView1.Items.Remove(listView1.Items[client.Rtua]);
                        }
                        this.tbClientsNum.Text   =   System.Convert.ToString(clients.Count);
                        //client.StopFlag   =   true;
                        //client.CurrentSocket.Close();

                        listView1.Refresh();

                        ListViewItem   lvi   =   new   ListViewItem();
                        lvi.Tag   =   client.Rtua;
                        lvi.Text   =   client.Rtua;
                        lvi.SubItems.Add(getIPAddress());
                        lvi.SubItems.Add(tbSocketPort.Text);
                        lvi.SubItems.Add(DateTime.Now.ToString());
                        lvi.SubItems.Add(client.IpAddress);
                        lvi.SubItems.Add(client.Port);
                        lvi.SubItems.Add(client.ProtocolType);
                        lvi.SubItems.Add( "No ");
                        this.listView1.Items.Add(lvi);

                        client.StopFlag   =   true;
                        client.CurrentSocket.Close();
                }

//添加DTU并更新界面状态
                public   void   addListView(Client   client)
                {
                        if   (clients.Contains(client.Rtua))


                        {
                                clients.Remove(client.Rtua);
                        }

                        if   (listView1.Items.ContainsKey(client.Rtua))
                        {
                                //listView1.Items.RemoveByKey(client.Rtua);
                                listView1.Items.Remove(listView1.Items[client.Rtua]);
                        }
                       
                        clients.Add(client.Rtua,   client);

                        ListViewItem   lvi   =   new   ListViewItem();
                        lvi.Tag   =   client.Rtua;
                        lvi.Text   =   client.Rtua;
                        lvi.SubItems.Add(getIPAddress());
                        lvi.SubItems.Add(tbSocketPort.Text);
                        lvi.SubItems.Add(DateTime.Now.ToString());
                        lvi.SubItems.Add(client.IpAddress);
                        lvi.SubItems.Add(client.Port);
                        lvi.SubItems.Add(client.ProtocolType);
                        lvi.SubItems.Add( "Yes ");
                        this.listView1.Items.Add(lvi);

                        this.tbClientsNum.Text   =   System.Convert.ToString(clients.Count);  
                }

请问为什么我能把信息添加上listView1,但是删除的时候就是删除不了(界面上仍然显示出来)
是什么问题呢??
THS


[解决办法]
trace一下
[解决办法]
以前遇到过,准确的答案忘记了,不过大概是因为行数组里面删除了,但是列数组里面没有删除;或者列数组里面删除了,但是行数组里面没有删除;

楼主自己看看

热点排行