/// <summary> /// 触发带返回的消息 /// </summary> /// <param name="_args"></param> /// <param name="_bubbleChanel"></param> public object TriggerSelf(object _args, bool _bubbleChanel) { if (funcCallbacks.Count > 0) { for (var index = 0; index < funcCallbacks.Count; index++) { var funcCallback = funcCallbacks[index]; if (null != funcCallback) { return(funcCallback(_args)); } } } if (true == _bubbleChanel) { for (var index = 0; index < channelTags.Count; index++) { var channelTag = channelTags[index]; var channel = AppEvent.GetEventChannel(channelTag); if (null != channel) { ((EventSystemChannel)channel).TriggerSelf(_args); } } } return(null); }
/// <summary> /// 广播消息,是否冒泡给Channel /// </summary> /// <param name="_args"></param> /// <param name="_BubbleChannel"></param> public void BroadCastSelf(object _args, bool _BubbleChannel) { // 广播所有事件 if (eventCallbacks.Count > 0) { for (var index = 0; index < eventCallbacks.Count; index++) { var eventCallback = eventCallbacks[index]; if (null != eventCallback) { eventCallback(_args); } } } if (true == _BubbleChannel) { // 监听了对应频道的也进行广播 if (channelTags.Count > 0) { for (var index = 0; index < channelTags.Count; index++) { var channelTag = channelTags[index]; var channel = AppEvent.GetEventChannel(channelTag); if (null != channel) { ((EventSystemChannel)channel).BroadCastSelf(EventName, _args); } } } } }