コード例 #1
0
        public static void InitializeProvider(this ITaskPanesReceiver receiver, object application,
                                              object ctpFactoryInst)
        {
            if (receiver == default)
            {
                throw new ArgumentNullException(nameof(receiver));
            }

            BaseProvider.AddReceiver(receiver);

            if (DryIocProvider.Application == default)
            {
                var dryIocApplication = new Application.ExcelApplication(
                    application: application,
                    ctpFactoryInst: ctpFactoryInst,
                    contentType: receiver.GetType());

                DryIocProvider.InitializeApplication(dryIocApplication);

                DryIocProvider.OnApplicationExitEvent  += OnApplicationExit;
                DryIocProvider.OnScopeClosingEvent     += OnScopeClosing;
                DryIocProvider.OnScopeInitializedEvent += OnScopeInitialized;
                DryIocProvider.OnScopeOpenedEvent      += OnScopeOpened;
                DryIocProvider.OnProviderReadyEvent    += OnProviderReady;
                DryIocProvider.OnTaskPaneChangedEvent  += OnTaskPaneChanged;
            }
        }