private void ClearPacketLog() { PacketLogList.Clear(); Program.UI.listView1.Items.Clear(); iSendPacketNum = 0; iRecvPacketNum = 0; label4.Text = String.Format("本次连接中,发送封包{0}条,接收封包{1}条", iSendPacketNum, iRecvPacketNum); }
public void AddList(string type, int num, ref _PacketData PacketData, byte[] plain, byte[] cipher) { ListViewItem li = new ListViewItem(type); li.SubItems.Add(num.ToString()); li.SubItems.Add(PacketData.length.ToString()); li.SubItems.Add(PacketData.version.ToString()); li.SubItems.Add(PacketData.userId.ToString()); li.SubItems.Add(PacketData.cmdId.ToString()); li.SubItems.Add(Command.GetCommandName(PacketData.cmdId)); li.SubItems.Add(PacketData.result.ToString()); li.SubItems.Add(Misc.ByteArray2HexString(PacketData.body)); li.SubItems.Add(Misc.ByteArray2HexString(plain)); li.SubItems.Add(Misc.ByteArray2HexString(cipher)); // 添加到封包log列表中 PacketLogList.Add(li); //Console.WriteLine(PacketLogList.Count); // 这段由PacketFilter内部实现 // 若关键字过滤的文本框中没有字符,则将该条封包log添加到UI的listview框中 //if (String.IsNullOrEmpty(textBox5.Text)) //{ // this.listView1.Items.Add(li); //} PacketFilter(li); if (type == "send") { iSendPacketNum++; } if (type == "recv") { iRecvPacketNum++; } label4.Text = String.Format("本次连接中,发送封包{0}条,接收封包{1}条", iSendPacketNum, iRecvPacketNum); //this.listView1.Items[this.listView1.Items.Count - 1].EnsureVisible(); //列表刷新时自动拉到最后 }