C#: Need one of my classes to trigger an event in another class to update a text box
        Posted  
        
            by Matt
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by Matt
        
        
        
        Published on 2010-04-01T10:07:17Z
        Indexed on 
            2010/04/01
            10:13 UTC
        
        
        Read the original article
        Hit count: 272
        
Total n00b to C# and events although I have been programming for a while.
I have a class containing a text box. This class creates an instance of a communication manager class that is receiving frames from the Serial Port. I have this all working fine.
Every time a frame is received and its data extracted, I want a method to run in my class with the text box in order to append this frame data to the text box.
So, without posting all of my code I have my form class...
public partial class Form1 : Form
{
    CommManager comm;
    public Form1()
    {
        InitializeComponent();
        comm = new CommManager();
    }
    private void updateTextBox()
    {
        //get new values and update textbox
    }
    .
    .
    .
and I have my CommManager class
class CommManager 
{
     //here we manage the comms, recieve the data and parse the frame
}
SO... essentially, when I parse that frame, I need the updateTextBox method from the form class to run. I'm guessing this is possible with events but I can't seem to get it to work.
I tried adding an event handler in the form class after creating the instance of CommManager as below...
 comm = new CommManager();
 comm.framePopulated += new EventHandler(updateTextBox);
...but I must be doing this wrong as the compiler doesn't like it...
Any ideas?!
© Stack Overflow or respective owner