Ejemplo n.º 1
0
        public void OnBroadcast(FocusEvent @event, FocusListener context, Control eventControl)
        {
            // 判断是不是其他监听器的消息(广播转发的时候其实已经过滤了,这句判断可以不加)
            if (context != this)
            {
                switch (@event)
                {
                case FocusEvent.Got:
                    // 如果是其他监听器下的控件获得了焦点,且焦点最后的状态记录为true,则主动执行失去焦点的事件函数
                    if (isOnFocus && !ChildControls.Contains(eventControl))
                    {
                        ChildControl_LostFocus(lastOnFocusControl, new EventArgs());
                    }
                    break;

                case FocusEvent.Lost:

                    break;
                }
            }
        }