Event redispatching or something else?

I have a First class that contains a reference to Second class object. Second class contains a reference to Third class object. My custom event dispatches in Third but listeners added on First. Event redispatching from third to First is the only way?