我对 VS 和 C# 比较陌生,但在 Delphi 方面有多年经验。在 Delphi 中设计 GUI 时我最喜欢的组件之一是 ActionManager - 为操作分配事件处理程序以及启用/禁用它们的集中方式。令人惊讶的是,我在 Visual Studio 2008 Professional 中找不到类似的东西。我确信应该有第三方实现,但我更喜欢标准的东西。
有人可以为此建议我吗?也许有一些替代方法可以有效地管理我缺少的 GUI 操作?
我对 VS 和 C# 比较陌生,但在 Delphi 方面有多年经验。在 Delphi 中设计 GUI 时我最喜欢的组件之一是 ActionManager - 为操作分配事件处理程序以及启用/禁用它们的集中方式。令人惊讶的是,我在 Visual Studio 2008 Professional 中找不到类似的东西。我确信应该有第三方实现,但我更喜欢标准的东西。
有人可以为此建议我吗?也许有一些替代方法可以有效地管理我缺少的 GUI 操作?
在 WPF 中有Commands,它们在概念上是相似的。
我也喜欢 ActionManager。当时我不知道,但它只是模型-视图-控制器的一个花哨的实现。事后看来,对于毫无准备的开发者社区来说,Delphi 太先进了 8-)
回到您的问题,C# 有事件和委托的概念,它们等同于动作及其处理程序。您将控制事件(或 GUI 操作)绑定到委托。例如,
mybutton.Click += HandleMyButtonClick;
Click
将是具有签名的代表void (object sender, EventArgs e)
。该签名将跟随HandleMyButtonClick
方法,如下所示。
void HandleMyButtonClick(object sender, EventArgs e)
在控件的类文档下,将有一个部分列出所有引发的事件。这些事件还将描述处理它们所需的委托的签名。