//METHODS /// <summary> /// Add the data to the end of the buffered data. /// </summary> /// <param name="data"> /// The data to add to the builder for later parsing. /// If data == null, nothing is added. /// </param> public void Append(String data) { BufferedDataEventArgs e = new BufferedDataEventArgs(); if (data != null) { e.bufferedData += data; OnBufferedDataChanged(this, e); } }
void messageBuilder_OnBufferedDataChanged(object sender, BufferedDataEventArgs e) { String receivedData = e.bufferedData; string pattern = @"(?<=[" + messageEndMarker + "])"; String[] allMessages = Regex.Split(receivedData, pattern); lbAllMessages.Items.Clear(); foreach (String message in allMessages) { if (message != null && message != "") { if (message.Contains(messageBeginMarker) && message.Contains(messageEndMarker)) { lbAllMessages.Items.Add(message.Substring(1).TrimEnd(Convert.ToChar(messageEndMarker))); } } } }