Action<T>
es la firma, que sólo significa que el método representado por la acción debe tomar un solo parámetro El tipo de parámetro depende de la firma de la llamada Invoke
.
Algunos ejemplos de código de cómo representar las diversas firmas de Action
:
var noArgs =() => button1.Text = "hello world"; // Action
var oneArg = (arg) => button1.Text = "hello world"; // Action<T>
var twoArgs = (arg1, arg2) => button1.Text = "hello world"; // Action<T,T>
Si no necesita utilizar los parámetros para el método, eso está bien. Pero aún necesita declararlos en la expresión lambda.
Ahora, esto no responde cómo hacerlo desde .NET 2.0, pero supuse (quizás incorrectamente, me corrijan si estoy equivocado) que no sabían cómo las lambdas corresponden a los tipos de acción.
este funciona ... pero la respuesta de aligray, ¿por qué es que tengo ese error? No se puede convertir el método anónimo para escribir 'System.Delegate' porque no es un tipo delegado ... creo que sigue siendo el mismo.. –