public static void UnRegisterSelectionListener(IEntitySelectionListener listener) { if (_listeners.Contains(listener)) { _listeners.Remove(listener); } }
/// <summary> /// 此方法可能有内存泄漏,所以每个类型只保留最后一次注册的对象的通知 /// </summary> /// <param name="listener"></param> public static void RegisterSelectionListener(IEntitySelectionListener listener) { var old = _listeners.FirstOrDefault(p => p.GetType().FullName == listener.GetType().FullName); if (old != null) { _listeners.Remove(old); } _listeners.Add(listener); }