public void SetController(
     AccountLogOnController accountLogOnController,
     EmployeeController employeeController)
 {
     _accountLogOnController = accountLogOnController;
     _employeeController     = employeeController;
 }
        static void Main()
        {
            #region Register Views
            AccountLogOnView startView = new AccountLogOnView();
            startView.Visible = false;

            HomeView homeView = new HomeView();
            homeView.Visible = false;

            EmployeeView employeeView = new EmployeeView();
            employeeView.MdiParent = homeView;
            homeView.Visible       = false;

            UserRegisterView userRegisterView = new UserRegisterView();
            userRegisterView.Visible = false;
            #endregion

            #region Register Repository & Service
            // Nhibernate
            IUnitOfWork     uow            = new NHUnitOfWork();
            IUserRepository userRepository = new UserRepository(uow);

            IUserService userService = new UserService(
                userRepository,
                uow);
            #endregion

            // manual injection view to main-controller
            AccountLogOnController AccountLogOnController = new AccountLogOnController(
                startView,
                homeView,
                employeeView,
                userRegisterView,
                userService);

            startView.ShowDialog();
        }
 /// <summary>
 /// Register Controller
 /// </summary>
 /// <param name="accountLogOnController"></param>
 public void SetController(AccountLogOnController accountLogOnController)
 {
     _accountLogOnController = accountLogOnController;
 }