有没有什么办法可以传递“方法”? 直接这样就可以了。myButton.Click+=new System.EventHandler(But_Click);EventHandler本质就是一个Delegate。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 误会我的意思了,我知道可以直接写的,可是当But_Click不在这个类中,而我又有什么方法,可以从外部传入方法到这个类中add()中呢? 那么假设But_Click在类Sample中,可以写如下代码:Sample a := new Sample();myButton.Click+=new System.EventHandler(a.But_Click); 作为参数,似乎只能这样:public void Add(EventHandler a){ button2.Click += a;} Add(new EventHandler(button3_Click)); 解决啦!Checlhy你最后的那个作为参数的方法可以!:)要的就是这个。倒数第二个不是不可以,而是必须在类中实例化带有方法的类才能用,如果是这个类的调用者的方法就不行了。非常感谢!给分啦。 delegate void EventFunction(object sender,EventArgs e); public void add(EventFunction function) { Button myButton=new Button(); myButton.Name="asdf"; myButton.Location=new Point(20,20); myButton.Click+=new System.EventHandler(function); } public void Btn_Click(object sender,System.EventArgs e) { .... } EventFunction eventFunction+=new EventFunction(Btn_Click); add(eventFunction) 请教大家,为什么要有ArrayList这个怪物存在? ping 命令不能使用,如何解决? 想用SSL来传送密钥,可以吗?急急急 数据库的每条数据以自定义的表格形式显示 如何给js创建的Popup窗体加点击事件 C#Winform编程DataGrid的鼠标双击的问题!在线等急呀 下班前,提个问题,望高手指点。 怎样将imagelist中的图片()赋值给notifyIcon.icon 在vc#.net那里有多文档窗体 如何使用ado五大对象链接sqlserver做一个.net core的增删改查 如何从Visual C#.NET启动另一个应用程序 高手及微软专家请进
Sample a := new Sample();
myButton.Click+=new System.EventHandler(a.But_Click);
public void Add(EventHandler a)
{
button2.Click += a;
} Add(new EventHandler(button3_Click));
要的就是这个。倒数第二个不是不可以,而是必须在类中实例化带有方法的类才能用,如果是这个类的调用者的方法就不行了。非常感谢!给分啦。
public void add(EventFunction function)
{
Button myButton=new Button();
myButton.Name="asdf";
myButton.Location=new Point(20,20);
myButton.Click+=new System.EventHandler(function);
}
public void Btn_Click(object sender,System.EventArgs e)
{
....
}
EventFunction eventFunction+=new EventFunction(Btn_Click);
add(eventFunction)