Из этой статьи MSDN есть довольно много способов подключить делегата с помощью отражения.
Кажется, лучший способ - метод CreateDelegate:
Delegate d = Delegate.CreateDelegate(delegateType, targetObject, handlerMethodName);
В обычных условиях я бы указывал на метод-обработчик, который находится в классе targetObject.
Но что, если делегат был создан анонимно? Пример:
public delegate void SelectedVehiclesCollectionDelegate(string query, List<Vehicles> list);
...
myObject.SelectedVehiclesCollection = (query, list) =>
{
//assign list of vehicles to list matching query
};
В определении класса нет метода, на который ссылается делегат. Мне нужно вызвать этот делегат, который неизвестен во время выполнения, в результате получается список элементов.
Хорошо, похоже, моя терминология одолела меня. Я не собирался создавать обработчик, а вызывал то, что уже есть (ответ Томаса Петричека все же дает мне хорошее понимание).