如何用C#代码触发button-click事件

时间:2026-02-12 13:14:29

一、基本的调用方法

1、button1.PerformClick();

2、button1_Click(null,null);

3、button_Click(null,new EventArgs());

二、利用反射调用

//建立一个函数  

private void callOnClick(Button btn)  

{  

//建立一个类型  

Type t = typeof(Button);  

//参数对象  

object[] p = new object[1];  

//产生方法  

MethodInfo m = t.GetMethod("OnClick", BindingFlags.NonPublic | BindingFlags.Instance);  

//参数赋值。传入函数  

p[0] = EventArgs.Empty;  

//调用  

m.Invoke(btn, p);  

return;  

}  

(此处空一行)

//调用例子。  

//调用Button1的onclick  

callOnClick(Button1);  

(此处空一行)

//调用Button5的onclick  

callOnClick(Button5);

如何用C#代码触发button-click事件

扩展资料:

除了上述的button-click事件,还可以调用更多的事件

private void callButtonEvent(Button btn, string EventName)  

{     

//建立一个类型      

Type t = typeof(Button);  

//参数对象      

object[] p = new object[1];  

//产生方法      

MethodInfo m = t.GetMethod(EventName, BindingFlags.NonPublic | BindingFlags.Instance);  

//参数赋值。传入函数      

//获得参数资料  

ParameterInfo[] para =  m.GetParameters();  

//根据参数的名字,拿参数的空值。  

p[0] = Type.GetType(para[0].ParameterType.BaseType.FullName).GetProperty("Empty");  

//调用      

m.Invoke(btn, p);  

return;  

}  

(此处空一行)

//调用例子。  

//调用Button1的onclick  

callButtonEvent(Button1,"OnClick");  

(此处空一行)

//调用Button5的OnKeyPress  

callButtonEvent(Button5,"OnKeyPress");

© 2026 长短途
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com