When you create an event handler for an object using the IDE, it puts a "Handles" clause on the method declaration, which is what links the method to the object. If you delete that object, the "Handles" clause is removed, so the event handler just becomes a plain old procedure. If you then add a new object, there is no link between the procedure and the object unless you re-add the "Handles" clause. If you try to use the IDE to create an event handler automatically, because a method with the default name already exists, a new method is created with the name changed slightly. The IDE does not assume that you want the existing method to be used as the event handler.