Datagrid view from single textbox

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • gmanan
    New Member
    • Jun 2015
    • 1

    Datagrid view from single textbox

    Hi
    I have a note sorter machine that is connected to serial port. I am able to get the data from it in a textbox that is as folllows:
    -----------------------------JL206F ID:VDE40050

    2015/05/29 11:02:19

    JBatch_No.:067

    JOperator ID:15

    --------------------------------

    Mixed Counting

    W--------------------------------Deposit Amount: 0.00

    --------------------------------

    denom count value

    UVK(|????DW50D 1 50.00

    JUVK(|????DW20D 1 20.00

    JUVK(|????DW10N D 1 10.00

    J--------------------------------

    Total: 3 80.00

    --------------------------------

    Coin: 0.00

    --------------------------------

    Balance: 0.00


    Now I want them to arrange in datagrid. How can I do that.

    My code is as follows:
    Code:
    namespace SerialPortListener
    {
        public partial class MainForm : Form
        {
            SerialPortManager _spManager;
            public MainForm()
            {
                InitializeComponent();
    
                UserInitialization();
            }
    
          
            private void UserInitialization()
            {
                _spManager = new SerialPortManager();
                SerialSettings mySerialSettings = _spManager.CurrentSerialSettings;
                serialSettingsBindingSource.DataSource = mySerialSettings;
                portNameComboBox.DataSource = mySerialSettings.PortNameCollection;
                baudRateComboBox.DataSource = mySerialSettings.BaudRateCollection;
                dataBitsComboBox.DataSource = mySerialSettings.DataBitsCollection;
                parityComboBox.DataSource = Enum.GetValues(typeof(System.IO.Ports.Parity));
                stopBitsComboBox.DataSource = Enum.GetValues(typeof(System.IO.Ports.StopBits));
    
                _spManager.NewSerialDataRecieved += new EventHandler<SerialDataEventArgs>(_spManager_NewSerialDataRecieved);
                this.FormClosing += new FormClosingEventHandler(MainForm_FormClosing);
            }
    
            
            private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
            {
                _spManager.Dispose();   
            }
    
            void _spManager_NewSerialDataRecieved(object sender, SerialDataEventArgs e)
            {
                if (this.InvokeRequired)
                {
                    // Using this.Invoke causes deadlock when closing serial port, and BeginInvoke is good practice anyway.
                    this.BeginInvoke(new EventHandler<SerialDataEventArgs>(_spManager_NewSerialDataRecieved), new object[] { sender, e });
                    return;
                }
    
                int maxTextLength = 1000; // maximum text length in text box
                if (tbData.TextLength > maxTextLength)
                    tbData.Text = tbData.Text.Remove(0, tbData.TextLength - maxTextLength);
    
                
                
                string str = Encoding.ASCII.GetString(e.Data);
                
                tbData.AppendText(str);
                tbData.ScrollToCaret();
                
    
    
    
            }
    
            // Handles the "Start Listening"-buttom click event
            private void btnStart_Click(object sender, EventArgs e)
            {
                _spManager.StartListening();
            }
    
            // Handles the "Stop Listening"-buttom click event
            private void btnStop_Click(object sender, EventArgs e)
            {
                _spManager.StopListening();
            }
Working...