private void RowReaderButton_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                // The RowReader class can parse strings for you directly and handle
                // quotes and other things you will encounter in a CSV file
                using (MemoryStream ms = new MemoryStream())
                    using (StreamWriter sw = new StreamWriter(ms))
                    {
                        sw.WriteLine("This,is,\"a row with, commas\",in,     it");
                        sw.Flush();
                        ms.Seek(0, SeekOrigin.Begin);

                        using (StreamReader sr = new StreamReader(ms))
                        {
                            var reader = new RowReader(sr);
                            while (reader.CanRead())
                            {
                                PrintColumnList(reader.ReadRow());
                            }
                        }
                    }
            }
            catch (Exception ex)
            {
                LogError(ex);
            }
        }
        private void BothButton_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                var columnList = new List <string>();

                List <string> stringList = new List <string>();
                stringList.Add("jack, says");
                stringList.Add("he ");
                stringList.Add("ran");
                stringList.Add("over");
                stringList.Add("John's");
                stringList.Add("foot");

                using (MemoryStream ms = new MemoryStream())
                    using (StreamWriter sw = new StreamWriter(ms))
                    {
                        var writer = new RowWriter(sw);
                        writer.Write(stringList);
                        sw.Flush();

                        ms.Seek(0, SeekOrigin.Begin);
                        using (StreamReader sr = new StreamReader(ms))
                        {
                            var reader = new RowReader(sr);
                            while (reader.CanRead())
                            {
                                PrintColumnList(reader.ReadRow());
                            }
                        }
                    }
            }
            catch (Exception ex)
            {
                LogError(ex);
            }
        }