- Tasks.zip
- Tasks
- Tasks
- Db
- tasks.db
- Lib
- Blend
- Microsoft.Expression.Interactions.dll
- System.Windows.Interactivity.dll
- INIFileParser
- MvvmLight
- GalaSoft.MvvmLight.WPF4.dll
- Model
- packages
- CommonServiceLocator.1.0
- CommonServiceLocator.1.0.nupkg
- lib
- NET35
- Microsoft.Practices.ServiceLocation.dll
- Microsoft.Practices.ServiceLocation.pdb
- Microsoft.Practices.ServiceLocation.XML
- SL30
- Microsoft.Practices.ServiceLocation.dll
- Microsoft.Practices.ServiceLocation.XML
- Iesi.Collections.3.2.0.4000
- Iesi.Collections.3.2.0.4000.nupkg
- lib
- Net35
- NHibernate.3.3.0-CR1
- repositories.config
- System.Data.SQLite.1.0.80.0
- lib
- net20
- System.Data.SQLite.dll
- System.Data.SQLite.Linq.dll
- net40
- System.Data.SQLite.dll
- System.Data.SQLite.Linq.dll
- System.Data.SQLite.1.0.80.0.nupkg
- Unity.2.1.505.0
- lib
- NET35
- SL30
- tools
- Unity.2.1.505.0.nupkg
- Persistance
- Tasks.sln
- Tasks.suo
- TasksReport1
- TasksSetup
- Debug
- Release
- TasksSetup.vdproj
- WpfApp
- Tasks-noexe.zip
|
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Windows;
using Microsoft.Practices.Unity;
using Messaging;
using WpfApp.Views;
using WpfApp.ViewModels;
using WpfApp.Navigation;
using WpfApp.Services;
using Persistance;
using System.Windows.Markup;
using System.Globalization;
namespace WpfApp
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : Application
{
IUnityContainer unityContainer;
private void RegisterMainWindowView(IViewRegistration viewRegistration)
{
MainWindow view = new MainWindow();
view.DataContext = unityContainer.Resolve<MainWindowViewModel>();
unityContainer.RegisterInstance<MainWindow>(view);
}
private void RegisterTaskManagerView(IViewRegistration viewRegistration)
{
TaskManagerView view = new TaskManagerView();
view.DataContext = unityContainer.Resolve<TaskManagerViewModel>();
unityContainer.RegisterInstance<TaskManagerView>(ViewIDs.TaskManager.ToString(),view);
viewRegistration.AddView(ViewIDs.TaskManager,view);
}
private void RegisterProjectPickerView(IViewRegistration viewRegistration)
{
ProjectPickerView view = new ProjectPickerView();
view.DataContext = unityContainer.Resolve<ProjectPickerViewModel>();
unityContainer.RegisterInstance<ProjectPickerView>(ViewIDs.ProjectPicker.ToString(), view);
viewRegistration.AddView(ViewIDs.ProjectPicker, view);
}
private void RegisterActivityPickerView(IViewRegistration viewRegistration)
{
ActivityPickerView view = new ActivityPickerView();
view.DataContext = unityContainer.Resolve<ActivityPickerViewModel>();
unityContainer.RegisterInstance<ActivityPickerView>(ViewIDs.ActivityPicker.ToString(), view);
viewRegistration.AddView(ViewIDs.ActivityPicker, view);
}
private void RegisterReportView(IViewRegistration viewRegistration)
{
ReportView view = new ReportView();
view.DataContext = unityContainer.Resolve<ReportViewModel>();
unityContainer.RegisterInstance<ReportView>(ViewIDs.ReportModule.ToString(), view);
viewRegistration.AddView(ViewIDs.ReportModule, view);
}
private void AdjustCultureSettings()
{
FrameworkElement.LanguageProperty.OverrideMetadata(typeof(FrameworkElement),
new FrameworkPropertyMetadata(XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag)));
}
private void BootStrap()
{
unityContainer = new UnityContainer();
unityContainer.RegisterInstance<IAppConfigService>(new AppConfigService("config.ini"), new ContainerControlledLifetimeManager());
unityContainer.RegisterType<IMessageBus, MessageBus>(new ContainerControlledLifetimeManager());
unityContainer.RegisterType<ViewNavigator>(new ContainerControlledLifetimeManager());
unityContainer.RegisterType<IViewNavigation, ViewNavigator>();
unityContainer.RegisterType<IViewRegistration, ViewNavigator>();
unityContainer.RegisterType<LocalDbSessionFactory>(new ContainerControlledLifetimeManager());
unityContainer.RegisterType<ILocalDbSessionFactory, LocalDbSessionFactory>();
unityContainer.RegisterType<IProjectData, ProjectData>();
unityContainer.RegisterType<IActivityData, ActivityData>();
unityContainer.RegisterType<ITaskManagerDataContextFactory, TaskManagerDataContextFactory>();
RegisterMainWindowView(unityContainer.Resolve<IViewRegistration>());
RegisterTaskManagerView(unityContainer.Resolve<IViewRegistration>());
RegisterProjectPickerView(unityContainer.Resolve<IViewRegistration>());
RegisterActivityPickerView(unityContainer.Resolve<IViewRegistration>());
RegisterReportView(unityContainer.Resolve<IViewRegistration>());
}
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
AdjustCultureSettings();
BootStrap();
MainWindow mw = unityContainer.Resolve<MainWindow>();
mw.Show();
unityContainer.Resolve<IMessageBus>().Publish<MbcNavigateTo>(null, new MbcNavigateTo(ViewIDs.TaskManager));
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.