private void serialPort_DataReceived(object sender, SerialDataReceivedEventArgs e) { string data = serialPort.ReadLine(); this.BeginInvoke((Action)(() => { if (data[0] == '{') { AgentData agentData = JsonConvert.DeserializeObject <AgentData>(@data); AgentDataAdapter adapter = new AgentDataAdapter(agentData); dataTextBox.Text += adapter.toString() + Environment.NewLine; dataCollector.addReport(agentData); if (dataCollector.isComplete()) { new GraphicController(dataCollector).convert().draw(); } //fileAdapter.writeLine(adapter.toString()); } else { dataTextBox.Text += data + Environment.NewLine; //fileAdapter.writeLine(data); } })); }