internal void OnParsingDataIncomming(ParsingDataIncommingEventArgs e) { if (dcmDataDGV.InvokeRequired) { AddItemsCallback callback = new AddItemsCallback(OnParsingDataIncomming); dcmDataDGV.Invoke(callback, e); } else { dcmDataDGV.SuspendLayout(); // 添加请求ID if (e.RequestData != null) { dcmDataDGV.Rows.Add(new string[] { string.Format("Tx{0:X3}", e.RequestCanId), Utils.HexArrayToString(e.RequestData) }); } // 添加响应ID if (e.ResponseData != null) { dcmDataDGV.Rows.Add(new string[] { string.Format("Rx{0:X3}", e.ResponseCanId), Utils.HexArrayToString(e.ResponseData) }); } else { dcmDataDGV.Rows.Add(new string[] { "<Empty>", "<Empty>" }); } // 设置响应数据前景色 var cell = dcmDataDGV[ColumnDataIndex, dcmDataDGV.Rows.Count - 1]; cell.Selected = true; // 添加、解析数据 List <KeyValuePair <string, string> > itemsToAdd = new List <KeyValuePair <string, string> >(); itemsToAdd.AddRange(e.EntryList); ParseReceiveData(e, itemsToAdd); ResponseDataTag tag = new ResponseDataTag { ParsedList = itemsToAdd, PostiveResponse = e.PostiveResponse }; cell.Tag = tag; dcmDataDGV.ResumeLayout(); // 手动通知选择变化 dcmDataDGV_SelectionChanged(dcmDataDGV, EventArgs.Empty); } }
private int SetText(string[] items) { if (this.listView1.InvokeRequired) { AddItemsCallback d = new AddItemsCallback(SetText); this.Invoke(d, new object[] { items }); } else { listView1.Items.Add(items[0], items[1], -1); listView1.Items[items[0]].SubItems.Add(items[1]); listView1.Items[items[0]].SubItems.Add(items[2]); listView1.Items[items[0]].SubItems.Add(items[3]); listView1.Items[items[0]].SubItems.Add(items[4]); listView1.Items[items[0]].SubItems.Add(items[5]); listView1.Items[items[0]].SubItems.Add(items[6]); listView1.Update(); return(listView1.Items.Count - 1); } return(-1); }
private int SetText(string[] items) { if (this.listView1.InvokeRequired) { AddItemsCallback d = new AddItemsCallback(SetText); this.Invoke(d, new object[] { items }); } else { listView1.Items.Add(items[0], items[1], -1); listView1.Items[items[0]].SubItems.Add(items[1]); listView1.Items[items[0]].SubItems.Add(items[2]); listView1.Items[items[0]].SubItems.Add(items[3]); listView1.Items[items[0]].SubItems.Add(items[4]); listView1.Items[items[0]].SubItems.Add(items[5]); listView1.Items[items[0]].SubItems.Add(items[6]); listView1.Update(); return listView1.Items.Count - 1; } return -1; }