为了账号安全,请及时绑定邮箱和手机立即绑定

良好实践 - C# 中的私有事件与私有方法

良好实践 - C# 中的私有事件与私有方法

C#
慕村225694 2021-11-28 19:32:30
拥有一个只能从对象本身内部订阅的私人事件是否被认为是“良好的做法”?(WPF 窗口)?另一种方法是在我调用事件的任何地方调用一个类似于 EventHandler 委托的方法。对于事件,它看起来像这样:    private delegate void ZoomScaleChangedEventhandler(object sender, EventArgs e);    private event ZoomScaleChangedEventhandler ZoomScaleChanged;    ...            this.ZoomScaleChanded += this.ZoomScaleChangedHandler;    ...    private void someMethod()    {        // Change zoom scale        this.ZoomScaleChanged?.Invoke(this, EventArgs.Empty);    }    private void ZoomScaleChangedHandler(object sender, EventArgs e)    {        // Do stuff    }用这样的方法:    private void someMethod()    {        // Change zoom scale        this.ZoomScaleChanged();    }    private void ZoomScaleChanged()    {        // Do stuff    }
查看完整描述

1 回答

?
湖上湖

TA贡献2003条经验 获得超2个赞

拥有一个只能从对象本身内部订阅的私人事件是否被认为是“良好的做法”?

不。定义一个私有事件只是为了能够通知(调用)一些私有方法并没有多大意义。那么你不妨直接调用这些方法,而不是引发事件。

事件用于向外部世界发出动作发生的信号,事件发送者通常不知道哪个对象或方法将处理它引发的事件。


查看完整回答
反对 回复 2021-11-28
  • 1 回答
  • 0 关注
  • 239 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信