![]() |
#6 |
Участник
|
С validateField наверное немного неудачный пример. т.к. изменить возвращаемое значение метода перехватив событие его вызова видимо всё-таки нельзя. И наверное это правильно, иначе были бы конфликты между несколькими "перехватчиками". Да и к тому же перехватывать видимо можно только методы помеченные ключевым словом delegate (это предположение). Кстати, в случае наличия нескольких подписчиков возникает вопрос очерёдности их обработки. Может они вообще параллельно могут выполняться
![]() Так же интересно, каким способом в обработчике события можно получить ссылку на объект у которого это событие произошло? На сколько я понял из примера, входящие параметры обработчика совпадают с входящими параметрами перехватываемого метода. Сработает если переписать метод appleGrew так: X++: delegate void appleGrew(int appleId, Apples _this = this) { } UPD. Спасибо за ссылку на MSDN многие вопросы отпали Оказывается и возвращаемое значение можно поменять и даже значения входных параметров. И всё-таки интересно как это всё будет жить в случае нескольких подписчиков? Последний раз редактировалось S.Kuskov; 30.06.2011 в 22:02. |
|
Теги |
event, ax2012 |
|
|