private void OnShowDialogButtonClicked(object sender, RoutedEventArgs e)
        {
            var username = new TextBoxViewModel();
            var password = new TextBoxViewModel();

            var okButton = new ButtonViewModel {
                Content = new TextBlockViewModel("YYY")
            };

            var buttonPanel = new StackPanelViewModel();

            buttonPanel.Children.Add(okButton);

            var contentPanel = new StackPanelViewModel();

            contentPanel.Children.Add(username);
            contentPanel.Children.Add(password);
            contentPanel.Children.Add(buttonPanel);

            var window          = DependencyResolver.Instance.Get <IModalWindow <WindowViewModel> >();
            var windowViewModel = new WindowViewModel {
                Content = contentPanel
            };

            window.SetViewModel(windowViewModel);

            window.ShowDialog();
        }
        private void BindModelImplementation(IViewModel <StackPanelModel> vm)
        {
            StackPanelViewModel spvm = (StackPanelViewModel)vm;

            _childrenConnector = new TChildrenConnector {
                ViewModelCollection = spvm.ChildCollection, ViewCollection = Children
            };
        }
Exemple #3
0
        public void ProperlySetPanelChildrenModel()
        {
            var textBoxViewModel    = new TextBoxViewModel();
            var stackPanelViewModel = new StackPanelViewModel();

            stackPanelViewModel.Children.Add(textBoxViewModel);

            VerifyPanelChildrenCollection(textBoxViewModel.GetModel(), stackPanelViewModel);
        }
Exemple #4
0
        public void ProperlyBindTheContent()
        {
            var stackPanelViewModel = new StackPanelViewModel();
            var windowViewModel     = new WindowViewModel()
            {
                Content = stackPanelViewModel
            };
            var window = DependencyResolver.Instance.Get <IModalWindow <WindowViewModel> >();

            window.SetViewModel(windowViewModel);

            Assert.IsNotNull(((WindowView)window).Content);
        }
Exemple #5
0
        public void ProperlyAssemblyMvvmStructure()
        {
            var expectedTextBoxViewModel = new TextBoxViewModel();
            var expectedTextBoxModel     = expectedTextBoxViewModel.GetModel();

            var expectedStackPanelViewModel = new StackPanelViewModel();
            var expectedStackPanelModel     = expectedStackPanelViewModel.GetModel();

            expectedStackPanelViewModel.Children.Add(expectedTextBoxViewModel);

            var expectedWindowViewModel = new WindowViewModel {
                Content = expectedStackPanelViewModel
            };
            var window = DependencyResolver.Instance.Get <IModalWindow <WindowViewModel> >();

            Assert.AreSame(expectedStackPanelModel, expectedWindowViewModel.GetModel().Content);
            VerifyPanelChildrenCollection(expectedTextBoxModel, expectedStackPanelViewModel);

            window.SetViewModel(expectedWindowViewModel);
            VerifyPanelChildrenCollection(expectedTextBoxModel, expectedStackPanelViewModel);

            var actualWindowViewModel = window.GetViewModel();

            // Model structure.
            var actualStackPanelModel = (StackPanelModel)actualWindowViewModel.GetModel().Content;

            Assert.AreSame(expectedStackPanelModel, actualStackPanelModel);

            var actualStackPanelChildren = actualStackPanelModel.Children;

            Assert.IsNotNull(actualStackPanelChildren);
            Assert.AreEqual(1, actualStackPanelChildren.Count);

            var actualTextBoxModel = actualStackPanelChildren[0];

            Assert.AreSame(expectedTextBoxModel, actualTextBoxModel);


            // ViewModel structure
            Assert.AreSame(expectedWindowViewModel, actualWindowViewModel);

            var actualStackPanelViewModel = (StackPanelViewModel)actualWindowViewModel.Content;

            Assert.AreSame(expectedStackPanelViewModel, actualStackPanelViewModel);

            var actualChildren = actualStackPanelViewModel.Children.ViewModelCollection;

            Assert.AreEqual(1, actualChildren.Count);

            var actualTextBoxViewModel = actualChildren[0];

            Assert.AreSame(expectedTextBoxViewModel, actualTextBoxViewModel);



            // View structure.

            var actualStackPanelView = ((WindowView)window).Content;

            Assert.IsNotNull(actualStackPanelView);
            Assert.AreSame(expectedStackPanelViewModel, actualStackPanelView.GetViewModel <StackPanelViewModel>());


            //var actualChildren = actualStackPanelViewModel.Children;

            //var actualTextBoxViewModel = actualChildren.ViewModelCollection[0];
            //Assert.AreSame(expectedTextBoxViewModel, actualTextBoxViewModel);



            //var actualStackPanelView = (StackPanelView)((WindowView)window).Content;
            //Assert.AreSame(expectedStackPanelViewModel, actualStackPanelView.GetViewModel<StackPanelViewModel>());

            //var actualStackPanelChildrenCollection = actualStackPanelView.Children;
            //Assert.AreEqual(1, actualStackPanelChildrenCollection.Count);

            //var actualTextBoxView = (TextBoxView)actualStackPanelChildrenCollection[0];
            //Assert.AreSame(expectedTextBoxViewModel, actualTextBoxView.GetViewModel<TextBoxViewModel>());

            //Assert.AreEqual(1, expectedStackPanelViewModel.GetModel().Children.Count);
            //Assert.AreSame(expectedTextBoxViewModel.Model, expectedStackPanelViewModel.GetModel().Children[0]);

            //// ViewModel structure
            //Assert.AreSame(window.GetViewModel(), expectedWindowViewModel);
            //Assert.AreSame(expectedWindowViewModel.Content, expectedStackPanelViewModel);
            //Assert.AreEqual(1, expectedStackPanelViewModel.Children.ViewModelCollection.Count);
            //Assert.AreSame(expectedTextBoxViewModel, expectedStackPanelViewModel.Children.ViewModelCollection[0]);

            //// View structure, verifying through the ViewModels.
            //Assert.AreSame(expectedStackPanelViewModel, window.GetViewModel().Content);
        }