Пример #1
0
        IUnityContainer CreateActivityContext(string regionName, INvtSession session, ContentColumn column)
        {
            var container = this.container.CreateChildContainer();

            //create & register view presenter
            var presenter = ViewPresenter.Create(view => {
                var region = regionManager.Regions[regionName];
                //dbg.Assert(column.Content == null);
                column.Content = view;

                return(Disposable.Create(() => {
                    //column.Content = null;
                }));
            });

            container.RegisterInstance <IViewPresenter>(presenter);
            container.RegisterInstance <INvtSession>(session);
            container.RegisterInstance <Dispatcher>(Dispatcher.CurrentDispatcher);

            var app = Application.Current as App;

            if (app != null && app.plugins != null)
            {
                try {
                    foreach (var p in app.plugins)
                    {
                        p.OnDeviceSettingsContextCreated(container);
                    }
                } catch (Exception err) {
                    dbg.Error(err);
                }
            }

            return(container);
        }
Пример #2
0
        static IUnityContainer CreateActivityContext(Action <FrameworkElement> setView, IUnityContainer parentContext)
        {
            var container = parentContext.CreateChildContainer();

            //create & register view presenter
            var presenter = ViewPresenter.Create(view => {
                setView(view);
                return(Disposable.Create(() => {
                    //setView(null);
                }));
            });

            container.RegisterInstance <IViewPresenter>(presenter);

            return(container);
        }
Пример #3
0
        IUnityContainer CreateActivityContext(IUnityContainer container, ContentControl UIelement)
        {
            var childContainer = container.CreateChildContainer();

            //create & register view presenter
            var presenter = ViewPresenter.Create(view => {
                UIelement.Content = view;
                return(Disposable.Create(() => {
                    //UIelement.Content = null;
                }));
            });

            childContainer.RegisterInstance <IViewPresenter>(presenter);

            return(childContainer);
        }