private void SafeInvokeDisplayText(DisplayTextEventArgs displayTextEventArgs) { if (DisplayText == null) { return; //No Listeners } DisplayTextEvent listener = null; Delegate[] dels = DisplayText.GetInvocationList(); foreach (Delegate del in dels) { try { listener = (DisplayTextEvent)del; listener.Invoke(displayTextEventArgs); } catch (Exception) { //Could not reach the destination, so remove it //from the list DisplayText -= listener; } } }
public void DisplayTextProxyHandler(DisplayTextEventArgs args) { DisplayText?.Invoke(args); }