Вы можете использовать тип Action<>
, который инкапсулирует метод, принимающий параметр, или, если вам нужно возвращаемое значение, типы Func
и Func<>
. Например:
static void PrintHello()
{
Console.WriteLine("Hello world");
}
static void PrintMessage(string message)
{
Console.WriteLine("Hello " + message);
}
....
Action hello = new Action(PrintHello);
Action<string> message = new Action<string>(PrintMessage);
hello();
message("my world");
производит:
Hello world
Hello my world
Обратите внимание, как создается действие, просто ссылаясь на метод, который инкапсулирован внутри, а затем вызывается, передавая необходимый параметр.