That makes sense.  In the current state though it looks like the previous mode hasn't been updated yet when we raise the event.  Is there a reason to not make the complete switch here then raise the event so everything is consistent when the event fires?