У меня есть несколько пользовательских событий C #, которые связаны с элементами, выбранными в дереве, а затем с контекстным меню, используемым для запуска некоторых действий с выбранными элементами. Я начал создавать отдельный класс на основе EventArgs для каждого настраиваемого события, чтобы упаковать необходимые данные для этого события.
Однако, задним ходом я понимаю, что большинству (может быть, всем) моих пользовательских событий нужно будет пройти хотя бы список базовых объектов, представленных выделением дерева. Некоторые события, вероятно, также потребуют дополнительных данных.
Имея это в виду, мне интересно, является ли любое из следующего приемлемой практикой?
Используйте один и тот же пользовательский класс на основе EventArgs для нескольких событий (тех, которые просто нуждаются в передаче списка объектов). Очевидно, что это должно сработать, но, похоже, отрывается от некоторых рекомендуемых соглашений об именах, используемых для подключения механизма событий.
Создайте базовый класс, который оборачивает мой часто необходимый список объектов, и затем извлекайте из него дополнительные классы по мере необходимости в дополнительных данных.
Может быть, что-то еще целиком?
В настоящее время у меня есть только несколько пользовательских событий, но мне нужно добавить больше. Поскольку я вижу, что в отношении данных, необходимых для каждого события, возникает определенная схема, я хотел бы иметь более точный план, прежде чем продолжить.
Спасибо за любой совет.