Visual Studio 中是否有 Delphi 的 ActionManager 替代品
我对 VS 和 C# 比较陌生,但在 Delphi 方面有多年的经验。 在 Delphi 中设计 GUI 时我最喜欢的组件之一是 ActionManager - 为操作分配事件处理程序以及启用/禁用它们的集中方式。 令人惊讶的是,我在 Visual Studio 2008 Professional 中找不到类似的东西。 我确信应该有第三方实现,但我更喜欢标准的东西。
有人可以为此建议我一些东西吗? 也许有一些替代方法可以有效管理我所缺少的 GUI 操作?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我也喜欢 ActionManager。 我当时并不知道,但它只是模型-视图-控制器的一个奇特的实现。 事后看来,Delphi 对于毫无准备的开发人员社区来说太先进了 8-)
回到你的问题,C# 有事件和委托的概念,它们相当于操作及其处理程序。 您将控制事件(或 GUI 操作)与委托联系起来。 例如,
Click
将是具有签名void (object sender, EventArgs e)
的委托。 此签名后面会跟有HandleMyButtonClick
方法,如下所示。在控件的类文档下,有一个部分列出了引发的所有事件。 这些事件还将描述处理它们所需的代表的签名。
I loved ActionManager, too. I did not know it at that time, but all it is is a fancy implementation of Model-View-Controller. In hindsight, Delphi was too advanced for an unprepared developer community 8-)
Back to your question, C# has the concept of events and delegates, which are equivalent to actions and their handlers. You tie control events (or GUI actions) to delegates. For example,
Click
would be a delegate with the signaturevoid (object sender, EventArgs e)
. This signature would be followed by theHandleMyButtonClick
method, like this.Under the class documentation of controls, there will be a section listing all the events that are raised. These events will also describe the signature of the delegates required to handle them.
在 WPF 中,有一些概念上相似的命令。
In WPF there are Commands, which are conceptually similar.