2009-07-29 80 views
6

我對VS和C#相對比較陌生,但在Delphi中有多年的經驗。 在Delphi中設計GUI時,我最喜歡的組件之一是ActionManager - 爲操作分配事件處理程序以及啓用/禁用它們的集中方式。 令人驚訝的是,我在Visual Studio 2008 Professional中找不到像這樣的東西。 我相信應該有第三方實現,但我更喜歡標準的東西。在Visual Studio中有沒有Delphi的ActionManager替代方案

有人可以爲我推薦一些東西嗎?也許有一些替代方法可以有效地管理我缺少的GUI操作?

+0

你是不是指TActionList?花式菜單和工具欄不是TActionManager嗎? – 2009-07-29 19:09:08

+1

可能的重複:http://stackoverflow.com/questions/489376/is-there-net-equivalent-to-delphis-actionlist – 2009-07-30 07:03:29

回答

3

在WPF中有Commands,它們在概念上是相似的。

+0

謝謝,這似乎非常接近,但不幸的是不可用於WinForms。我不確定是否應該轉向WPF,但似乎MS將WinForms定位爲過時的技術。對他們不是很好。 – koldovsky 2009-07-30 08:38:11

1

我也喜歡ActionManager。那時我不知道它,但它只是模型 - 視圖 - 控制器的一個奇妙的實現。事後看來,Delphi對於一個毫無準備的開發者社區而言太過先進了 - )

回到你的問題,C#具有事件和委託的概念,它們相當於動作及其處理程序。您將控制事件(或GUI操作)綁定到代表。例如,

mybutton.Click += HandleMyButtonClick; 

Click將與簽名void (object sender, EventArgs e)的委託。這個簽名後面跟着HandleMyButtonClick方法,就像這樣。

void HandleMyButtonClick(object sender, EventArgs e) 

在控件的類文檔下,將會有一個部分列出所有引發的事件。這些活動還將介紹處理這些活動所需的代表的簽名。

相關問題