public void UnBind(TKey eventType, EventCallback <TValue> eventHandler) { EventCallback <TValue> callbacks; if (dict.TryGetValue(eventType, out callbacks)) { callbacks = (EventCallback <TValue>) EventCallback <TValue> .RemoveAll(callbacks, eventHandler); if (callbacks == null) { dict.Remove(eventType); } else { dict[eventType] = callbacks; } } }