Создаем чекбоксы на основе имен и подписываемся на событие, при его возникновении вызываем нужный метод с именем.
private void Form1_Load(object sender, EventArgs e)
{
string[] names = { "first", "second", "threes" };
int yPosition = 33;
foreach (var name in names)
{
var checkBox = new CheckBox() { Location = new Point(101, yPosition), Text = name, };
checkBox.Click += (o, args) => { this.Select(name); };
this.Controls.Add(checkBox);
yPosition += 22;
}
}
public void Select(string name)
{
MessageBox.Show(name);
}