class cl2
{
public void kkk(object sss)
{
MessageBox.Show(sss.ToString());
}
}
Type t=typeof(cl2);
t.InvokeMember("kkk",BindingFlags.Public,null);我想调用cl2类的KKK方法,t.InvokeMember后面的参数不知道该怎么写。请各位大虾帮忙,谢谢。

解决方案 »

  1.   

    private void button1_Click(object sender, System.EventArgs e)
    {
    Type t=typeof(cl2);
    Object obj=t.InvokeMember(null,
    BindingFlags.DeclaredOnly | 
    BindingFlags.Public | BindingFlags.NonPublic | 
    BindingFlags.Instance | BindingFlags.CreateInstance,
    null, null,new object[]{"dddd"});
    t.InvokeMember("kkk",BindingFlags.Public|BindingFlags.Instance,null,obj,new object[] {"kkkkkkkk"});
    }//始终说找不到构造函数,哪里错了啊。public class cl2
    {
    public cl2()
    { } public void kkk(object sss)
    {
    MessageBox.Show(sss.ToString());
    } private void aaa()
    {
    MessageBox.Show("aaaaaaaaaaaaaaaaaaa");
    }
    }
      

  2.   

    ....
    object obj = Activator.CreateInstance(t);
    t.InvokeMember("kkk",BindingFlags.Public,null,obj,new object[]{"world"});
      

  3.   

    Type t=typeof(cl2);
    object obj = Activator.CreateInstance(t);
    t.GetMethod("kkk").Invoke(obj,new object[]{"hello world!"});