/// <summary> /// Invokes the specific view load event and makes sure that it isn't double invoked. /// </summary> /// <param name="viewLoadStateEvent">The view load state event.</param> /// <exception cref="System.ArgumentOutOfRangeException">viewLoadStateEvent</exception> protected void InvokeViewLoadEvent(ViewLoadStateEvent viewLoadStateEvent) { if (_lastInvokedViewLoadStateEvent == viewLoadStateEvent) { return; } EventHandler <EventArgs> handler = null; switch (viewLoadStateEvent) { case ViewLoadStateEvent.Loading: handler = ViewLoading; break; case ViewLoadStateEvent.Loaded: handler = ViewLoaded; break; case ViewLoadStateEvent.Unloading: handler = ViewUnloading; break; case ViewLoadStateEvent.Unloaded: handler = ViewUnloaded; break; default: throw new ArgumentOutOfRangeException("viewLoadStateEvent"); } handler.SafeInvoke(this); _lastInvokedViewLoadStateEvent = viewLoadStateEvent; }
/// <summary> /// Invokes the specific view load event and makes sure that it isn't double invoked. /// </summary> /// <param name="view">The view.</param> /// <param name="viewLoadStateEvent">The view load state event.</param> /// <exception cref="System.ArgumentOutOfRangeException">viewLoadStateEvent</exception> protected void InvokeViewLoadEvent(IView view, ViewLoadStateEvent viewLoadStateEvent) { if (_lastInvokedViewLoadStateEvent == viewLoadStateEvent) { return; } if (view == null) { return; } EventHandler <ViewLoadEventArgs> handler; switch (viewLoadStateEvent) { case ViewLoadStateEvent.Loading: handler = ViewLoading; break; case ViewLoadStateEvent.Loaded: handler = ViewLoaded; break; case ViewLoadStateEvent.Unloading: handler = ViewUnloading; break; case ViewLoadStateEvent.Unloaded: handler = ViewUnloaded; break; default: throw new ArgumentOutOfRangeException("viewLoadStateEvent"); } if (handler != null) { handler(this, new ViewLoadEventArgs(view)); } _lastInvokedViewLoadStateEvent = viewLoadStateEvent; }
/// <summary> /// Invokes the specific view load event and makes sure that it isn't double invoked. /// </summary> /// <param name="view">The view.</param> /// <param name="viewLoadStateEvent">The view load state event.</param> /// <exception cref="System.ArgumentOutOfRangeException">viewLoadStateEvent</exception> protected void InvokeViewLoadEvent(IView view, ViewLoadStateEvent viewLoadStateEvent) { if (_lastInvokedViewLoadStateEvent == viewLoadStateEvent) { return; } if (view == null) { return; } EventHandler<ViewLoadEventArgs> handler; switch (viewLoadStateEvent) { case ViewLoadStateEvent.Loading: handler = ViewLoading; break; case ViewLoadStateEvent.Loaded: handler = ViewLoaded; break; case ViewLoadStateEvent.Unloading: handler = ViewUnloading; break; case ViewLoadStateEvent.Unloaded: handler = ViewUnloaded; break; default: throw new ArgumentOutOfRangeException("viewLoadStateEvent"); } if (handler != null) { handler(this, new ViewLoadEventArgs(view)); } _lastInvokedViewLoadStateEvent = viewLoadStateEvent; }
/// <summary> /// Invokes the specific view load event and makes sure that it isn't double invoked. /// </summary> /// <param name="viewLoadStateEvent">The view load state event.</param> /// <exception cref="System.ArgumentOutOfRangeException">viewLoadStateEvent</exception> protected void InvokeViewLoadEvent(ViewLoadStateEvent viewLoadStateEvent) { if (_lastInvokedViewLoadStateEvent == viewLoadStateEvent) { return; } EventHandler<EventArgs> handler = null; switch (viewLoadStateEvent) { case ViewLoadStateEvent.Loading: handler = ViewLoading; break; case ViewLoadStateEvent.Loaded: handler = ViewLoaded; break; case ViewLoadStateEvent.Unloading: handler = ViewUnloading; break; case ViewLoadStateEvent.Unloaded: handler = ViewUnloaded; break; default: throw new ArgumentOutOfRangeException("viewLoadStateEvent"); } handler.SafeInvoke(this); _lastInvokedViewLoadStateEvent = viewLoadStateEvent; }