Handling events in "blocks" - C#