Convertir C # cuerpo de declaración lambda a VB

Parece que VB en VS8 no admite / convierte expresiones lambda con un cuerpo de declaración. Los estoy usando en mi aplicación C #, pero ahora debo convertirlos a VB.

Estoy creando dinámicamente un montón de controles y quiero poder darles controladores de eventos sobre la marcha. Esto es para que pueda construir una interfaz de usuario dinámica desde una base de datos. En el siguiente código crearé un formulario y una casilla de verificación, haré que la casilla de verificación controle la visibilidad del formulario, agregaré unos cuantos controladores de métodos al formulario y luego agregaré la casilla de verificación recién creada a un formulario / panel / etc preexistente. Los controladores para el formulario, por ejemplo, afectan la casilla de verificación:

  // Inside some loop creating a lot of these forms and matching checkboxes
      Form frmTemp = frmTestPanels[i];  // New form in array
      CheckBox chkSelectPanel;          // New checkbox that selects this panel
      chkSelectPanel = new CheckBox();
      chkSelectPanel.Text = SomeName;   // Give checkbox a label
      chkSelectPanel.Click += (ss, ee) =>  // When clicked
      {
          label1.Text = SomeName;       // Update a label
          if (chkSelectPanel.Checked)   // Show or hide the form
          {
              frmTemp.Show();
          }
          else
          {
              frmTemp.Hide();
          }
      };

      frmTemp.VisibleChanged += (ss, ee) =>  // When form visibility changes
      {
          chkSelectPanel.Checked = frmTemp.Visible;  // Reflect change to checkbox
          ConfigurationFileChanged = true;   // Update config file later
      };

      frmTemp.FormClosing += (ss, ee) =>     // When the form closes
      {   // We're only pretending to close the form - it'll sit around until needed
          chkSelectPanel.Checked = false;    // Update the checkbox
          frmTemp.Hide();                    // Hide the form
          ee.Cancel = true;                  // Cancel the close
      };

      flpSelectGroup.Controls.Add(chkSelectPanel); // Add checkbox to flow layout panel
  // End of loop creating a bunch of these matching forms/checkboxes

Por supuesto, recibo el error de conversión, "VB no admite métodos anónimos / expresiones lambda con un cuerpo de declaración"

Me gustó mucho la posibilidad de crear todo sobre la marcha y luego dejar que los objetos se manejen solos. No necesito agregar ninguna función especial que determine qué formulario está dando el evento de cierre para que pueda buscar la casilla de verificación correcta y actualizarla. la casilla de verificación - Simplemente funciona (TM).

Desafortunadamente necesita ser convertido a VB.

¿Cuál es la mejor manera de convertir los cuerpos de sentencias lambda / anónimas en algo que funcionará en VB, especialmente cuando uno necesita crear muchos de ellos?

-Adán

Respuestas a la pregunta(2)

Su respuesta a la pregunta