8

私は VS と C# には比較的慣れていませんが、Delphi には長年の経験があります。Delphi で GUI を設計する際に私が気に入っているコンポーネントの 1 つは、ActionManager です。これは、アクションのイベント ハンドラを割り当て、有効化/無効化する集中型の方法です。驚いたことに、Visual Studio 2008 Professional でこのようなものを見つけることができません。サードパーティの実装があるはずだと確信していますが、標準的なものを好むでしょう。

誰かが私にこれについて何か提案できますか? 私が見逃している GUI アクションを効果的に管理する別の方法があるのではないでしょうか?

4

2 に答える 2

4

WPF には、概念的に類似したCommandsがあります。

于 2009-07-29T17:40:33.820 に答える
1

私もActionManagerが大好きでした。その時は知りませんでしたが、Model-View-Controller の派手な実装にすぎません。後から考えると、準備不足の開発者コミュニティにとって、Delphi はあまりにも高度でした 8-)

質問に戻りますが、C# にはイベントとデリゲートの概念があり、アクションとそのハンドラーに相当します。コントロール イベント (または GUI アクション) をデリゲートに関連付けます。例えば、

mybutton.Click += HandleMyButtonClick;

Click署名付きのデリゲートになりますvoid (object sender, EventArgs e)HandleMyButtonClickこのシグネチャの後には、次のようにメソッドが続きます。

void HandleMyButtonClick(object sender, EventArgs e)

コントロールのクラス ドキュメントの下に、発生するすべてのイベントを一覧表示するセクションがあります。これらのイベントは、それらを処理するために必要なデリゲートの署名も記述します。

于 2009-07-29T18:58:56.940 に答える