Конвертировать тело оператора C # лямбда в VB
Похоже, что VB в VS8 неПоддержка / преобразование лямбда-выражений с помощью тела оператора. Я'Я использую их в моем приложении C #, но теперь должен преобразовать его в VB.I '
Я динамически создаю целую кучу элементов управления, и я хочу иметь возможность оперативно предоставлять им обработчики событий. Это так, я могу построить динамический пользовательский интерфейс из базы данных. В следующем коде ясоздадим форму и флажок, сделаем так, чтобы флажок управлял формойДля наглядности добавьте в форму несколько обработчиков методов, а затем добавьте вновь созданный флажок в существующую форму / панель / и т. д. Например, обработчики формы влияют на флажок:
// 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
Конечно я'получаю ошибку преобразования "VB не поддерживает анонимные методы / лямбда-выражения с телом оператора "
Мне очень понравилась возможность создавать все на лету, а затем позволить объектам управлять самими собой - я неНе нужно добавлять какие-либо специальные функции, которые выясняют, какая форма дает событие закрытия, чтобы он мог искать нужный флажок и обновлять флажок - Это просто работает (TM).
К сожалению это должно быть преобразовано в VB.
Каков наилучший способ преобразовать тела лямбда / анонимных операторов во что-то, что будет работать в VB, особенно когда нужно создать много из них?-Адам