Помогите понять синтаксис C # при вызове нового действия

Я новичок в C # и не понимаю синтаксис вызова нового действия или даже того, что такое действие. Насколько я понимаю в Port1_DataReceived, я должен создать действие, потому что я нахожусь в новой ступени ... Может ли кто-нибудь уточнить, почему мне нужно это делать?

public Form1()
{
    InitializeComponent();
    SerialPort Port1 = new SerialPort("COM11", 57600, Parity.None, 8, StopBits.One);
    Port1.DataReceived += new SerialDataReceivedEventHandler(Port1_DataReceived);
    Port1.Open();
}


private void Port1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
     SerialPort Port = (SerialPort)sender;
     string Line = "";
     int BytestoRead = Port.BytesToRead;
     Line = Port.ReadLine();
     label1.Invoke(new Action(() =>
     {
          label1.Text = Line;
      }));
}

Фрагмент кода, который я действительно не понимаю:

label1.Invoke(new Action(() =>
         {
              label1.Text = Line;
          }));

Может кто-нибудь сломать, что это делает ..Я уверен, что в этом нет ничего сложного, просто я никогда раньше не видел ничего подобного. Синтаксис, который меня действительно сдерживает, - это () => , новое действие указывает на код ниже или что-то в этом роде ??

5
задан Richard 7 July 2011 в 16:50
поделиться