Ejemplo n.º 1
0
        public void Select(RoutedPropertyChangedEventArgs <object> args)
        {
            if (args.NewValue is not MenuItem item)
            {
                return;
            }

            SelectModel = item.Screen;
            MainViewModel main = IoC.Get <MainViewModel>();

            main.ModuleList.IsShow   = SelectModel is ProjectViewModel;
            main.EntityList.IsShow   = SelectModel is ModuleViewModel;
            main.PropertyList.IsShow = SelectModel is EntityViewModel;
            switch (SelectModel)
            {
            case ProjectViewModel project:
                ModuleListViewModel list1 = IoC.Get <ModuleListViewModel>();
                list1.Project = project;
                list1.Init();
                break;

            case ModuleViewModel module:
                EntityListViewModel list2 = IoC.Get <EntityListViewModel>();
                list2.Module = module;
                list2.Init();
                break;

            case EntityViewModel entity:
                PropertyListViewModel list3 = IoC.Get <PropertyListViewModel>();
                list3.Entity = entity;
                list3.Init();
                break;
            }
        }
Ejemplo n.º 2
0
        public void CreateWindowSetsUpTitleBindingIfViewModelIsIHaveDisplayName()
        {
            var model = new Screen();
            var window = new Window();
            this.viewManager.Setup(x => x.CreateAndBindViewForModelIfNecessary(model)).Returns(window);
            
            this.windowManager.CreateWindow(model, false);

            var e = window.GetBindingExpression(Window.TitleProperty);
            Assert.NotNull(e);
            Assert.AreEqual(BindingMode.TwoWay, e.ParentBinding.Mode);
            Assert.AreEqual("DisplayName", e.ParentBinding.Path.Path);
        }
Ejemplo n.º 3
0
 public void CloseItemDoesNothingIfItemIsWrong()
 {
     var model = new Screen();
     var window = new MyWindow();
     this.viewManager.Setup(x => x.CreateAndBindViewForModelIfNecessary(model)).Returns(window);
     this.windowManager.CreateWindow(model, false);
     ((IChildDelegate)model.Parent).CloseItem(new object());
 }
Ejemplo n.º 4
0
 public void WindowClosingDoesNothingIfAlreadyCancelled()
 {
     var model = new Screen();
     var window = new MyWindow();
     this.viewManager.Setup(x => x.CreateAndBindViewForModelIfNecessary(model)).Returns(window);
     this.windowManager.CreateWindow(model, false);
     window.OnClosing(new CancelEventArgs(true));
 }
Ejemplo n.º 5
0
        public void CreateWindowDoesSetUpTitleBindingIfTitleIsNameOfTheClass()
        {
            var model = new Screen();
            var window = new Window();
            window.Title = "Window";
            this.viewManager.Setup(x => x.CreateAndBindViewForModelIfNecessary(model)).Returns(window);

            this.windowManager.CreateWindow(model, false);

            var e = window.GetBindingExpression(Window.TitleProperty);
            Assert.AreEqual("DisplayName", e.ParentBinding.Path.Path);
        }
Ejemplo n.º 6
0
        public void CreateWindowDoesNotSetUpTitleBindingIfTitleHasABindingAlready()
        {
            var model = new Screen();
            var window = new Window();
            var binding = new Binding("Test") { Mode = BindingMode.TwoWay };
            window.SetBinding(Window.TitleProperty, binding);
            this.viewManager.Setup(x => x.CreateAndBindViewForModelIfNecessary(model)).Returns(window);

            this.windowManager.CreateWindow(model, false);

            var e = window.GetBindingExpression(Window.TitleProperty);
            Assert.AreEqual("Test", e.ParentBinding.Path.Path);
        }
Ejemplo n.º 7
0
        public void CreateWindowDoesNotSetUpTitleBindingIfTitleHasAValueAlready()
        {
            var model = new Screen();
            var window = new Window();
            window.Title = "Foo";
            this.viewManager.Setup(x => x.CreateAndBindViewForModelIfNecessary(model)).Returns(window);

            this.windowManager.CreateWindow(model, false);

            var e = window.GetBindingExpression(Window.TitleProperty);
            Assert.IsNull(e);
            Assert.AreEqual("Foo", window.Title);
        }
Ejemplo n.º 8
0
        protected override void OnViewLoaded()
        {
            base.OnViewLoaded();
            var list = this.View.GetControls <Frame>();

            foreach (var item in list)
            {
                var index = Convert.ToInt16(item.Tag);
                if (index <= 0)
                {
                    (item.Parent as TabItem).Visibility = System.Windows.Visibility.Collapsed;
                    superList.Add(item);
                }
                Stylet.Screen VM = null;
                switch (index)
                {
                case -3:
                {
                    VM = IoC.Get <CommunicationSettingViewModel>();
                    break;
                }

                case -2:
                {
                    VM = IoC.Get <GlobalSettingViewModel>();
                    break;
                }

                case -1:
                {
                    VM = IoC.Get <JYQParameterViewModel>();
                    break;
                }

                case 0:
                {
                    //VM = IoC.Get<JYQViewModel>();
                    break;
                }

                case 1:
                {
                    VM = IoC.Get <JYQViewModel>();
                    break;
                }

                case 2:
                {
                    VM = IoC.Get <MachineHandViewModel>();
                    break;
                }

                case 3:
                {
                    VM = IoC.Get <CentrifugeViewModel>();
                    break;
                }

                case 4:
                {
                    VM = IoC.Get <MixerAndCouveuseViewModel>();
                    break;
                }

                case 5:
                {
                    VM = IoC.Get <PiercerViewModel>();
                    break;
                }

                case 6:
                {
                    VM = IoC.Get <ScanerViewModel>();
                    break;
                }
                }
                if (VM != null)
                {
                    var pv = viewManager.CreateAndBindViewForModelIfNecessary(VM);
                    item.SetValue(Frame.ContentProperty, pv);
                    VM_list.Add(VM);
                }
            }
        }
Ejemplo n.º 9
0
        public void ActivateWithDoesNotRetainChild()
        {
            var child = new Screen();
            child.ActivateWith(this.parent);

            var weakChild = new WeakReference(child);
            child = null;
            GC.Collect();

            ((IScreenState)this.parent).Activate();
            Assert.Null(weakChild.Target);
        }
Ejemplo n.º 10
0
        public void ConductWithDoesNotRetain()
        {
            var child = new Screen();
            child.ConductWith(this.parent);

            var weakChild = new WeakReference(child);
            child = null;
            GC.Collect();

            Assert.Null(weakChild.Target);
        }
Ejemplo n.º 11
0
 public void SetUp()
 {
     this.parent = new Screen();
     this.child = new Mock<IMyScreen>();
 }