Существует ли альтернатива Delphi ActionManager в Visual Studio? - PullRequest
6 голосов
/ 29 июля 2009

Я относительно новичок в VS и C #, но имею многолетний опыт работы в Delphi. Одним из моих любимых компонентов при разработке графического интерфейса в Delphi является ActionManager - централизованный способ назначения обработчиков событий для действий, а также их включения / отключения. Удивительно, но я не могу найти ничего подобного в Visual Studio 2008 Professional. Я уверен, что должны быть сторонние реализации, но я бы предпочел что-то стандартное.

Кто-нибудь может предложить мне что-нибудь для этого? Может быть, есть какой-то альтернативный способ эффективного управления действиями GUI, который мне не хватает?

Ответы [ 2 ]

3 голосов
/ 29 июля 2009

В WPF есть Команды , которые концептуально похожи.

1 голос
/ 29 июля 2009

Мне тоже понравился ActionManager. В то время я этого не знал, но все это модная реализация Model-View-Controller. Оглядываясь назад, Delphi был слишком продвинут для неподготовленного сообщества разработчиков 8 -)

Возвращаясь к вашему вопросу, в C # есть концепция событий и делегатов, которые эквивалентны действиям и их обработчикам. Вы связываете управляющие события (или действия с графическим интерфейсом) с делегатами. Например,

mybutton.Click += HandleMyButtonClick;

Click будет делегатом с подписью void (object sender, EventArgs e). За этой подписью следует метод HandleMyButtonClick, например:

void HandleMyButtonClick(object sender, EventArgs e)

Под документацией класса по элементам управления будет раздел, в котором перечислены все события, которые были вызваны. Эти события также будут описывать подпись делегатов, необходимых для их обработки.

...