private static void RaiseExecuted(IntPtr cPtr, IntPtr sender, IntPtr e) { try { if (!_Executed.ContainsKey(cPtr)) { throw new InvalidOperationException("Delegate not registered for Executed event"); } if (sender == IntPtr.Zero && e == IntPtr.Zero) { _Executed.Remove(cPtr); return; } if (Noesis.Extend.Initialized) { ExecutedHandler handler = _Executed[cPtr]; if (handler != null) { handler(Noesis.Extend.GetProxy(sender, false), new ExecutedRoutedEventArgs(e, false)); } } } catch (Exception exception) { Noesis.Error.SetNativePendingError(exception); } }
private static void RaiseExecuted(IntPtr cPtr, IntPtr sender, IntPtr e) { try { if (Noesis.Extend.Initialized) { long ptr = cPtr.ToInt64(); if (sender == IntPtr.Zero && e == IntPtr.Zero) { _Executed.Remove(ptr); return; } ExecutedHandler handler = null; if (!_Executed.TryGetValue(ptr, out handler)) { throw new InvalidOperationException("Delegate not registered for Executed event"); } handler?.Invoke(Noesis.Extend.GetProxy(sender, false), new ExecutedRoutedEventArgs(e, false)); } } catch (Exception exception) { Noesis.Error.UnhandledException(exception); } }