Probably the most straightforward method would be to make B declare a similar event. When B catches the C's event, it raises its own event for A to catch.
Another option would be to declare an event handler in A and then have B use the AddHandler statement to make A's event handler directly catch the C events. This would mean B needs a reference to its A object so it can refer to that event handler. It's also more confusing so I'd stick with the first option if possible; it's a lot simpler.
Rod
RodStephens@vb-helper.com
Author of "Visual Basic 2005 Programmer's Reference"
http://www.vb-helper.com/vb_prog_ref.htm
Sign up for the free
VB Helper Newsletters at
http://www.vb-helper.com/newsletter.html