所以我有这个课:
public class myClass
{
UserControl a;
UserControl b;
UserControl c;
public myClass (UserControl a, UserControl b, UserControl c)
{
this.a = a;
this.b = b;
this.c = c;
}
}
所有3个UserControl
都包含一个称为test()
的方法(或您想要的任何方法),尽管它们不是相同的方法。我希望能够从myClass
的相应类之外调用这些方法。我该怎么做呢?当我简单地尝试a.test()
时,我得到一个错误,指出test
不是UserControl
的一种方法。
UserControl
看起来像这样:
public partial class a : UserControl
{
public a()
{
InitializeComponent();
}
public void test()
{
//
}
}
答案 0 :(得分:-1)
您可以使用反射来做到这一点
using System.Reflection;
//Get the type of an object where the test method is
Type myType = a.GetType();
//Find the test method
MethodInfo testMethod = myType.GetMethod("test");
//Invoke the test method in the object
testMethod.Invoke(a, new object[] {});