/// <summary>
 ///     Gets the <see cref="IViewManager" /> that will be used in the current application by default.
 /// </summary>
 /// <returns>An instance of <see cref="IViewManager" />.</returns>
 protected override BindingInfo <IViewManager> GetViewManager()
 {
     return(BindingInfo <IViewManager>
            .FromMethod((container, list) =>
                        new ViewManagerEx(container.Get <IThreadManager>(), container.Get <IViewMappingProvider>())
     {
         DisposeView = true
     }, DependencyLifecycle.SingleInstance));
 }
Exemple #2
0
 protected override BindingInfo <IViewModelPresenter> GetViewModelPresenter()
 {
     return(BindingInfo <IViewModelPresenter> .FromMethod((container, list) =>
     {
         var presenter = new ViewModelPresenter();
         presenter.DynamicPresenters.Add(new DynamicViewModelNavigationPresenter());
         return presenter;
     }, DependencyLifecycle.SingleInstance));
 }
Exemple #3
0
        /// <summary>
        ///     Gets the <see cref="IThreadManager" /> which will be used in all view models by default.
        /// </summary>
        /// <returns>An instance of <see cref="IThreadManager" />.</returns>
        protected override BindingInfo <IThreadManager> GetThreadManager()
        {
#if WPF
            return(BindingInfo <IThreadManager> .FromMethod((container, list) => new ThreadManager(System.Windows.Threading.Dispatcher.CurrentDispatcher), DependencyLifecycle.SingleInstance));
#elif SILVERLIGHT
            return(BindingInfo <IThreadManager> .FromMethod((container, list) => new ThreadManager(System.Windows.Deployment.Current.Dispatcher), DependencyLifecycle.SingleInstance));
#elif NETFX_CORE || WINDOWSCOMMON
            return(BindingInfo <IThreadManager> .FromMethod((container, list) => new ThreadManager(Windows.UI.Xaml.Window.Current.Dispatcher), DependencyLifecycle.SingleInstance));
#endif
        }
 /// <summary>
 ///     Gets the <see cref="IViewModelPresenter" /> that will be used in the current application by default.
 /// </summary>
 /// <returns>An instance of <see cref="IViewModelPresenter" />.</returns>
 protected override BindingInfo <IViewModelPresenter> GetViewModelPresenter()
 {
     return(BindingInfo <IViewModelPresenter> .FromMethod((container, list) =>
     {
         var presenter = new ViewModelPresenter();
         presenter.DynamicPresenters.Add(
             new DynamicViewModelWindowPresenter(container.Get <IViewMappingProvider>(),
                                                 container.Get <IViewManager>(), container.Get <IThreadManager>(),
                                                 container.Get <IOperationCallbackManager>()));
         return presenter;
     }, DependencyLifecycle.SingleInstance));
 }
        protected override BindingInfo <IThreadManager> GetThreadManager()
        {
#if WPF
            if (Context.Platform.Platform != PlatformType.WPF)
            {
                return(BindingInfo <IThreadManager> .Empty);
            }
            return(BindingInfo <IThreadManager> .FromMethod((container, list) => new ThreadManager(System.Windows.Threading.Dispatcher.CurrentDispatcher), DependencyLifecycle.SingleInstance));
#elif SILVERLIGHT || WINDOWS_PHONE
            return(BindingInfo <IThreadManager> .FromMethod((container, list) => new ThreadManager(System.Windows.Deployment.Current.Dispatcher), DependencyLifecycle.SingleInstance));
#elif WINDOWSCOMMON
            return(BindingInfo <IThreadManager> .FromMethod((container, list) => new ThreadManager(Windows.UI.Xaml.Window.Current.Dispatcher), DependencyLifecycle.SingleInstance));
#endif
        }
        protected virtual BindingInfo <IViewMappingProvider> GetViewMappingProvider()
        {
            var assemblies               = Context.Assemblies;
            var platformType             = Context.Platform.Platform;
            var isSupportedUriNavigation = platformType == PlatformType.WPF;

            return(BindingInfo <IViewMappingProvider> .FromMethod((adapter, list) =>
            {
                return new ViewMappingProvider(assemblies)
                {
                    IsSupportedUriNavigation = isSupportedUriNavigation
                };
            }, DependencyLifecycle.SingleInstance));
        }
        protected override BindingInfo <IThreadManager> GetThreadManager()
        {
#if WPF
            if (Context.Platform.Platform != PlatformType.WPF)
            {
                return(BindingInfo <IThreadManager> .Empty);
            }
            return(BindingInfo <IThreadManager> .FromMethod((container, list) => new ThreadManager(System.Windows.Threading.Dispatcher.CurrentDispatcher), DependencyLifecycle.SingleInstance));
#elif WINDOWS_UWP
            if (Context.Mode.HasFlagEx(LoadMode.Design) && Windows.UI.Xaml.Window.Current.Dispatcher == null)
            {
                return(base.GetThreadManager());
            }
            return(BindingInfo <IThreadManager> .FromMethod((container, list) => new ThreadManager(Windows.UI.Xaml.Window.Current.Dispatcher), DependencyLifecycle.SingleInstance));
#endif
        }
Exemple #8
0
 protected override BindingInfo <IViewModelPresenter> GetViewModelPresenter()
 {
     if (Context.Platform.Platform == PlatformType.WinForms)
     {
         return(BindingInfo <IViewModelPresenter> .FromMethod((container, list) =>
         {
             var presenter = new ViewModelPresenter();
             presenter.DynamicPresenters.Add(
                 new DynamicViewModelWindowPresenter(container.Get <IViewMappingProvider>(),
                                                     container.Get <IViewManager>(), container.Get <IWrapperManager>(), container.Get <IThreadManager>(),
                                                     container.Get <IOperationCallbackManager>()));
             return presenter;
         }, DependencyLifecycle.SingleInstance));
     }
     MvvmApplication.Initialized += MvvmApplicationOnInitialized;
     return(BindingInfo <IViewModelPresenter> .Empty);
 }
 /// <summary>
 ///     Gets the <see cref="IThreadManager" /> which will be used in all view models by default.
 /// </summary>
 /// <returns>An instance of <see cref="IThreadManager" />.</returns>
 protected override BindingInfo <IThreadManager> GetThreadManager()
 {
     if (UseSimpleThreadManager)
     {
         return(BindingInfo <IThreadManager> .FromType <SynchronousThreadManager>(DependencyLifecycle.SingleInstance));
     }
     return(BindingInfo <IThreadManager> .FromMethod((container, list) =>
     {
         var context = SynchronizationContext.Current as WindowsFormsSynchronizationContext;
         if (context == null)
         {
             context = new WindowsFormsSynchronizationContext();
             SynchronizationContext.SetSynchronizationContext(context);
             WindowsFormsSynchronizationContext.AutoInstall = false;
         }
         return new ThreadManager(context);
     }, DependencyLifecycle.SingleInstance));
 }
 protected virtual BindingInfo <IReflectionManager> GetReflectionManager()
 {
     return(BindingInfo <IReflectionManager> .FromMethod((container, list) => ServiceProvider.ReflectionManagerField ?? new ExpressionReflectionManager(), DependencyLifecycle.SingleInstance));
 }
Exemple #11
0
 /// <summary>
 ///     Gets the <see cref="IThreadManager" /> that will be used in the current application by default.
 /// </summary>
 /// <returns>An instance of <see cref="IThreadManager" />.</returns>
 protected override BindingInfo <IThreadManager> GetThreadManager()
 {
     return(BindingInfo <IThreadManager> .FromMethod((container, list) => new ThreadManager(SynchronizationContext.Current), DependencyLifecycle.SingleInstance));
 }
 protected virtual BindingInfo <IValidatorProvider> GetValidatorProvider()
 {
     return(BindingInfo <IValidatorProvider> .FromMethod((container, list) => ServiceProvider.ValidatorProviderField ?? new ValidatorProvider(), DependencyLifecycle.SingleInstance));
 }
        protected virtual BindingInfo <ISerializer> GetSerializer()
        {
            var assemblies = Context.Assemblies;

            return(BindingInfo <ISerializer> .FromMethod((container, list) => new Serializer(assemblies), DependencyLifecycle.SingleInstance));
        }
 protected virtual BindingInfo <IEventAggregator> GetEventAggregator()
 {
     return(BindingInfo <IEventAggregator> .FromMethod((container, list) => ServiceProvider.EventAggregatorField ?? new EventAggregator(), DependencyLifecycle.SingleInstance));
 }
 protected virtual BindingInfo <IViewModelProvider> GetViewModelProvider()
 {
     return(BindingInfo <IViewModelProvider> .FromMethod((adapter, list) => new ViewModelProvider(adapter.GetRoot()), DependencyLifecycle.SingleInstance));
 }
        protected virtual BindingInfo <IViewMappingProvider> GetViewMappingProvider()
        {
            var assemblies = Context.Assemblies;

            return(BindingInfo <IViewMappingProvider> .FromMethod((adapter, list) => new ViewMappingProvider(assemblies), DependencyLifecycle.SingleInstance));
        }
 protected virtual BindingInfo <IAttachedValueProvider> GetAttachedValueProvider()
 {
     return(BindingInfo <IAttachedValueProvider> .FromMethod((container, list) => ServiceProvider.AttachedValueProvider, DependencyLifecycle.SingleInstance));
 }
Exemple #18
0
        protected override BindingInfo <IViewMappingProvider> GetViewMappingProvider()
        {
            var assemblies = Context.Assemblies;

            return(BindingInfo <IViewMappingProvider> .FromMethod((adapter, list) => new ViewMappingProviderEx(assemblies) { IsSupportedUriNavigation = false }, DependencyLifecycle.SingleInstance));
        }