【发布时间】:2022-02-25 14:10:58
【问题描述】:
我有点困惑。我知道我可以创建从 EventArgs 派生的类,以便拥有自定义事件数据。但是我可以以某种方式使用基类 EventArgs 吗?就像鼠标按钮点击一样,在订阅者方法中,总是有“EventArgs e”参数。我能否以某种方式创建以这种方式传递数据的方法,我的意思是它们将在基本 Eventargs 中传递?
【问题讨论】:
-
如果你试图在鼠标点击事件中捎带数据,你不仅不能这样做,而且表明你的设计存在问题。
-
有没有机会澄清为什么这必然是一个设计问题?菜单不能在语义上被视为一堆按钮,其相关事件允许您询问菜单中实际按下了哪个“按钮”?想要通过单击按钮传递额外信息,您违反了什么设计原则?