Повышение событий, унаследованных от базового класса в C#
в C#, это обычная практика, чтобы наследовать события от базового класса, чтобы облегчить обработку событий в полученных классах. Однако для повышения таких наследственных событий требуется конкретный подход, чтобы избежать ошибок компилятора. { Общественное мероприятие, погрузка на погрузку; Публичное мероприятие Eventhandler закончила; }
в полученном классе, пытаясь поднять событие загрузки с использованием:
public class BaseClass { public event EventHandler Loading; public event EventHandler Finished; }
получено в ошибке:
(Baseclass ')this.Loading(this, new EventHandler());эта ошибка возникает потому, что события, в отличие от других членов класса, не могут быть вызваны непосредственно полученным классом. Вместо этого унаследованные события должны быть подняты, вызывая конкретные методы, определенные в базовом классе. Чтобы достичь этого, необходимы следующие шаги:
this.Loading(this, new EventHandler());создать защищенные методы повышения событий в базовом классе:
определить защищенные методы в базовом классе, которые несут ответственность за повышение событий. Например:
this.Loading(this, new EventHandler());в полученных классах, вместо того, чтобы непосредственно ссылаться на события, вызовите соответствующие методы, определяемые в базовом классе. Например:
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3