示例#1
0
        public virtual void CreateEventBridge()
        {
            if (false == Factory.Settings.EnableEvents)
            {
                return;
            }

            if (null != _connectPoint)
            {
                return;
            }

            if (null == _activeSinkId)
            {
                _activeSinkId = SinkHelper.GetConnectionPoint(this, ref _connectPoint, NetOffice.AccessApi.Behind.EventContracts._SectionEvents_SinkHelper.Id, NetOffice.AccessApi.Behind.EventContracts.DispSectionEvents_SinkHelper.Id);
            }


            if (NetOffice.AccessApi.Behind.EventContracts._SectionEvents_SinkHelper.Id.Equals(_activeSinkId, StringComparison.InvariantCultureIgnoreCase))
            {
                __SectionEvents_SinkHelper = new NetOffice.AccessApi.Behind.EventContracts._SectionEvents_SinkHelper(this, _connectPoint);
                return;
            }

            if (NetOffice.AccessApi.Behind.EventContracts.DispSectionEvents_SinkHelper.Id.Equals(_activeSinkId, StringComparison.InvariantCultureIgnoreCase))
            {
                _dispSectionEvents_SinkHelper = new NetOffice.AccessApi.Behind.EventContracts.DispSectionEvents_SinkHelper(this, _connectPoint);
                return;
            }
        }
示例#2
0
        public virtual void DisposeEventBridge()
        {
            if (null != __SectionEvents_SinkHelper)
            {
                __SectionEvents_SinkHelper.Dispose();
                __SectionEvents_SinkHelper = null;
            }
            if (null != _dispSectionEvents_SinkHelper)
            {
                _dispSectionEvents_SinkHelper.Dispose();
                _dispSectionEvents_SinkHelper = null;
            }

            _connectPoint = null;
        }