Вызов общедоступных методов, используя их имена в C#
Вы можете использовать отражение для вызова общедоступных методов, используя их имена. Следующий код показывает, как работает программа примера.
// Вызовите метод.
private void btnInvoke_Click(object sender, EventArgs e)
{
try
{
Type this_type = this.GetType();
MethodInfo method_info =
this_type.GetMethod(txtMethodName.Text);
method_info.Invoke(this, null);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
В коде используется GetType, чтобы получить информацию о типе класса. Затем он вызывает GetMethod, передавая ему имя метода, чтобы получить объект MethodInfo, описывающий метод.
Затем он вызывает метод Invoke объекта для вызова метода. Второй параметр для этого вызова - это массив параметров, который должен быть отправлен вызову метода.
