如何从B类调用A类的私有事件处理程序?
它还会注册MouseClick事件。
有没有办法调用私有事件处理程序?
答案 0 :(得分:3)
简答:不要。
将您的事件处理程序声明为public,或者更好的是,创建一个公共代理方法,例如
public class MyClass
{
private myHandler....
public returnType DoClick() { return myHandler(...); }
}
直接访问私人会员会违背宣布私密会员的目的。
答案 1 :(得分:2)
创建一个事件处理程序和另一个类都可以调用的公共方法。通常,直接调用事件处理程序是个坏主意。仔细考虑一下你想要做什么,你应该能够找到一个更符合你想要做的概念的代码结构。您不希望其他类单击按钮;你希望你的其他班级做一些单击按钮也会做的事情。
答案 2 :(得分:0)
对私有方式订阅和私有订阅者的触发事件都没有限制。你到目前为止有没有错误?