Inheritance: AViewModel
Exemple #1
0
        public void ViewModelExtensions2()
        {
            var parentVM = new ParentViewModel()
            {
                TestParameter = "parameter"
            };
            var  childVM    = new ChildViewModel();
            Grid parentView = new Grid();
            Grid childView  = new Grid();

            childView.SetBinding(ViewModelExtensions.ParameterProperty, new Binding("DataContext.TestParameter")
            {
                Source = parentView
            });
            childView.SetBinding(ViewModelExtensions.ParentViewModelProperty, new Binding("DataContext")
            {
                Source = parentView
            });
            Window.Content = parentView;
            EnqueueShowWindow();
            EnqueueCallback(() => {
                parentView.Children.Add(childView);
            });
            EnqueueWindowUpdateLayout();
            EnqueueCallback(() => {
                childView.DataContext = childVM;
            });
            EnqueueWindowUpdateLayout();
            EnqueueCallback(() => {
                parentView.DataContext = parentVM;
            });
            EnqueueWindowUpdateLayout();
            EnqueueCallback(() => {
                Assert.AreSame(parentVM, ((ISupportParentViewModel)childVM).ParentViewModel);
                Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childVM).Parameter);
                parentVM.TestParameter = "parameter2";
            });
            EnqueueWindowUpdateLayout();
            EnqueueCallback(() => {
                Assert.AreSame(parentVM, ((ISupportParentViewModel)childVM).ParentViewModel);
                Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childVM).Parameter);
                parentVM = new ParentViewModel()
                {
                    TestParameter = "VM2test"
                };
                parentView.DataContext = parentVM;
            });
            EnqueueWindowUpdateLayout();
            EnqueueCallback(() => {
                Assert.AreSame(parentVM, ((ISupportParentViewModel)childVM).ParentViewModel);
                Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childVM).Parameter);
                parentVM.TestParameter = "parameter2";
            });
            EnqueueWindowUpdateLayout();
            EnqueueCallback(() => {
                Assert.AreSame(parentVM, ((ISupportParentViewModel)childVM).ParentViewModel);
                Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childVM).Parameter);
            });
            EnqueueTestComplete();
        }
        public ChildWindow(Window owner, ChildViewModel viewModel)
        {
            Owner       = owner;
            DataContext = viewModel ?? throw new ArgumentNullException(nameof(viewModel));

            InitializeComponent();
        }
Exemple #3
0
    public void LoadFromViewModel(ChildViewModel vm)
    {
        // save time and trouble by using the List as a datasource directly, or you can manually populate the combobox as well
        this.childUserControl.LoadFromViewModel(vm);

        this.someOtherControl.Value = vm.OtherData;
    }
Exemple #4
0
        public void ViewModelExtensionsWithService6_T155859()
        {
            var parentVM = new ParentViewModel()
            {
                TestParameter = "parameter"
            };
            ChildViewModel      childVM    = new ChildViewModel();
            Grid                parentView = new Grid();
            Grid                childView;
            TestViewServiceBase service = new TestViewServiceBase();

            ((TestViewLocator)service.ViewLocator).AllowCaching = true;
            ITestViewServiceBase iService = service;

            Interactivity.Interaction.GetBehaviors(parentView).Add(service);
            Window.Content = parentView;
            EnqueueShowWindow();
            EnqueueCallback(() => {
                iService.CreateChildView("testViewWithViewModel", null, parentVM.TestParameter, parentVM);
            });
            EnqueueWindowUpdateLayout();
            EnqueueCallback(() => {
                parentVM.TestParameter = "parameter2";
                iService.CreateChildView("testViewWithViewModel", null, parentVM.TestParameter, parentVM);
            });
            EnqueueWindowUpdateLayout();
            EnqueueCallback(() => {
                childView = parentView.Children[0] as Grid;
                Assert.AreSame(parentVM, ((ISupportParentViewModel)childView.DataContext).ParentViewModel);
                Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childView.DataContext).Parameter);
            });
            EnqueueTestComplete();
        }
 public void ViewModelExtensions1() {
     var parentVM = new ParentViewModel() { TestParameter = "parameter" };
     var childVM = new ChildViewModel();
     Grid parentView = new Grid() { DataContext = parentVM };
     Grid childView = new Grid() { DataContext = childVM };
     childView.SetBinding(ViewModelExtensions.ParameterProperty, new Binding("DataContext.TestParameter") { Source = parentView });
     childView.SetBinding(ViewModelExtensions.ParentViewModelProperty, new Binding("DataContext") { Source = parentView });
     parentView.Children.Add(childView);
     Window.Content = parentView;
     EnqueueShowWindow();
     EnqueueCallback(() => {
         Assert.AreSame(parentVM, ((ISupportParentViewModel)childVM).ParentViewModel);
         Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childVM).Parameter);
         parentVM.TestParameter = "parameter2";
     });
     EnqueueWindowUpdateLayout();
     EnqueueCallback(() => {
         Assert.AreSame(parentVM, ((ISupportParentViewModel)childVM).ParentViewModel);
         Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childVM).Parameter);
         parentVM = new ParentViewModel() { TestParameter = "VM2test" };
         parentView.DataContext = parentVM;
     });
     EnqueueWindowUpdateLayout();
     EnqueueCallback(() => {
         Assert.AreSame(parentVM, ((ISupportParentViewModel)childVM).ParentViewModel);
         Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childVM).Parameter);
         parentVM.TestParameter = "parameter2";
     });
     EnqueueWindowUpdateLayout();
     EnqueueCallback(() => {
         Assert.AreSame(parentVM, ((ISupportParentViewModel)childVM).ParentViewModel);
         Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childVM).Parameter);
     });
     EnqueueTestComplete();
 }
Exemple #6
0
        private void FormComputer_Load(object sender, EventArgs e)
        {
            if (id.HasValue)
            {
                try
                {
                    ChildViewModel view = logic.Read(new ChildBindingModel {
                        Id = id.Value
                    })?[0];

                    if (view != null)
                    {
                        textBoxFIO.Text = view.FIO;
                        textBoxAge.Text = view.Age.ToString();
                        childInterests  = view.ChildInterests;
                        LoadData();
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                childInterests = new Dictionary <int, string>();
            }
        }
Exemple #7
0
 /// <summary>
 ///     Instantiates a new CreateChildDialogViewModel used to edit the passed child.
 /// </summary>
 /// <param name="child"></param>
 public CreateChildDialogViewModel(ChildViewModel child)
 {
     WindowTitle = "Edit Application";
     Uid         = child.Uid;
     Name        = child.Name;
     Path        = child.Path;
     Image       = child.Image;
 }
Exemple #8
0
 // other properties
 public static ParentViewModel BuildViewModel(Parent parent)
 {
     return(new ParentViewModel
     {
         Children = parent.Children.Select(c => ChildViewModel.BuildViewModel(c)),
         // other properties
     });
 }
Exemple #9
0
        void FinalCheck_ViewModelExtensionsWithService_TestView(ChildViewModel childVM, ParentViewModel parentVM)
        {
            Grid parentView = (Grid)Window.Content;
            Grid childView  = parentView.Children[0] as Grid;

            Assert.AreSame(childVM, childView.DataContext);
            Assert.AreSame(parentVM, ((ISupportParentViewModel)childVM).ParentViewModel);
            Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childVM).Parameter);
        }
            public void Triggers_PropertyChanged()
            {
                string raisedPropertyName = null;
                var target = new ChildViewModel();
                target.PropertyChanged += (o, e) => raisedPropertyName = e.PropertyName;
                target.RaiseParentPropertyChanged("blah");

                Assert.AreEqual<string>("RaiseParentPropertyChanged", raisedPropertyName);
            }
    public void Test()
    {
        var masterViewModel = new MasterViewModel();

        using (var childViewModel = new ChildViewModel(masterViewModel))
        {
            masterViewModel.Customer = new Customer();
        }
        // assert that MaximizePostCall was called
    }
Exemple #12
0
    private void ShowChildFormModal()
    {
        ChildViewModel vm = new ChildViewModel();

        vm.CoordinatesList = ...
                             vm.OtherData = ...

                                            ChildForm child = new ChildForm();

        child.LoadFromViewModel(vm);
    }
Exemple #13
0
        public IWindow Create(Type dialogType)
        {
            if (dialogType != typeof(ChildWindow))
            {
                return(_reflectionDialogFactory.Create(dialogType));
            }

            var childViewModel = new ChildViewModel();
            var childWindow    = new ChildWindow(Owner, childViewModel);

            return(new WindowWrapper(childWindow));
        }
Exemple #14
0
        void Init_ViewModelExtensionsWithService_TestView(out ITestViewServiceBase service, out ChildViewModel childVM, out ParentViewModel parentVM)
        {
            parentVM = new ParentViewModel()
            {
                TestParameter = "parameter"
            };
            childVM = new ChildViewModel();
            Grid parentView = new Grid();

            service = new TestViewServiceBase();
            Interactivity.Interaction.GetBehaviors(parentView).Add((TestViewServiceBase)service);
            Window.Content = parentView;
        }
 public CreateTileViewModel(ParentViewModel parent, IUserDataService userData, ChildViewModel previousViewModel) : base(parent, userData)
 {
     InitializeCommands();
     _previousViewModel = previousViewModel;
     BackgroundViews    = new ObservableCollection <TileBase>();
     TileTypes          = new List <TileType>()
     {
         TileType.Alarm, TileType.Task, TileType.Timer, TileType.Weather, TileType.DateTime
     };
     _createSteps = new List <CreateTileStep>();
     Page         = new CteateTilePage()
     {
         DataContext = this
     };
 }
Exemple #16
0
        /// <summary>
        ///     Builds a ChildViewModel from the stored data.
        /// </summary>
        /// <returns></returns>
        public ChildViewModel BuildChildViewModel()
        {
            var child = new ChildViewModel
            {
                Name  = Name,
                Path  = Path,
                Image = Image
            };

            if (Uid != null)
            {
                child.Uid = Uid;
            }

            return(child);
        }
 private void LoadData()
 {
     for (int x = 0; x < 10; x++)
     {
         ParentViewModel parent = new ParentViewModel();
         parent.ChildChangedEvent += Parent_ChildChangedEvent;
         for (int y = 0; y < 20; y++)
         {
             ChildViewModel child = new ChildViewModel()
             {
                 ChildName = "Child " + y
             };
             parent.ChildViewModels.Add(child);
         }
         ParentViewModels.Add(parent);
     }
 }
Exemple #18
0
            public void RetrievesFromParentWhenAttachingViewModelToTree()
            {
                var grantParentVm = new GrantParentViewModel();
                var parentVm      = new ParentViewModel();
                var childVm       = new ChildViewModel();

                grantParentVm.DeferValidationUntilFirstSaveValue = true;

                ((IRelationalViewModel)grantParentVm).RegisterChildViewModel(parentVm);
                ((IRelationalViewModel)parentVm).SetParentViewModel(grantParentVm);

                ((IRelationalViewModel)parentVm).RegisterChildViewModel(childVm);
                ((IRelationalViewModel)childVm).SetParentViewModel(parentVm);

                Assert.IsTrue(parentVm.DeferValidationUntilFirstSaveValue);
                Assert.IsTrue(childVm.DeferValidationUntilFirstSaveValue);
            }
            public void RetrievesFromParentWhenAttachingViewModelToTree()
            {
                var grantParentVm = new GrantParentViewModel();
                var parentVm = new ParentViewModel();
                var childVm = new ChildViewModel();

                grantParentVm.DeferValidationUntilFirstSaveValue = true;

                ((IRelationalViewModel)grantParentVm).RegisterChildViewModel(parentVm);
                ((IRelationalViewModel)parentVm).SetParentViewModel(grantParentVm);

                ((IRelationalViewModel)parentVm).RegisterChildViewModel(childVm);
                ((IRelationalViewModel)childVm).SetParentViewModel(parentVm);

                Assert.IsTrue(parentVm.DeferValidationUntilFirstSaveValue);
                Assert.IsTrue(childVm.DeferValidationUntilFirstSaveValue);
            }
        public JsonResult Put([FromBody] ChildViewModel vm)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var child = Mapper.Map <Child>(vm);

                    var matchingNurs = User.FindAll("Nursery").FirstOrDefault(claim => claim.Value == child.NurseryId.ToString());
                    if (User.IsInRole("Admin") || matchingNurs != null)
                    {
                        child.Modified   = DateTime.Now;
                        child.ModifiedBy = User.Identity.Name;

                        if (child.Address != null)
                        {
                            _repository.SaveAddress(child.Address);
                        }
                        _repository.SaveChild(child);

                        if (_repository.SaveAll())
                        {
                            Response.StatusCode = (int)HttpStatusCode.OK;
                            return(Json(Mapper.Map <ChildViewModel>(child)));
                        }
                    }
                    else
                    {
                        Response.StatusCode = (int)HttpStatusCode.Unauthorized;
                        return(Json("Unauthorized to save this child"));
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.LogError("Failed to save child", ex);
                Response.StatusCode = (int)HttpStatusCode.BadRequest;
                return(Json("Failed to save child"));
            }

            Response.StatusCode = (int)HttpStatusCode.BadRequest;
            return(Json("Validation failed on child"));
        }
Exemple #21
0
            public void UpdatesChildsWhenUpdatingDeferValidationUntilFirstSave()
            {
                var grantParentVm = new GrantParentViewModel();
                var parentVm      = new ParentViewModel();
                var childVm       = new ChildViewModel();

                ((IRelationalViewModel)grantParentVm).RegisterChildViewModel(parentVm);
                ((IRelationalViewModel)parentVm).RegisterChildViewModel(childVm);

                Assert.IsFalse(grantParentVm.DeferValidationUntilFirstSaveValue);
                Assert.IsFalse(parentVm.DeferValidationUntilFirstSaveValue);
                Assert.IsFalse(childVm.DeferValidationUntilFirstSaveValue);

                parentVm.DeferValidationUntilFirstSaveValue = true;

                Assert.IsFalse(grantParentVm.DeferValidationUntilFirstSaveValue);
                Assert.IsTrue(parentVm.DeferValidationUntilFirstSaveValue);
                Assert.IsTrue(childVm.DeferValidationUntilFirstSaveValue);
            }
            public void UpdatesChildsWhenUpdatingDeferValidationUntilFirstSave()
            {
                var grantParentVm = new GrantParentViewModel();
                var parentVm = new ParentViewModel();
                var childVm = new ChildViewModel();

                ((IRelationalViewModel)grantParentVm).RegisterChildViewModel(parentVm);
                ((IRelationalViewModel)parentVm).RegisterChildViewModel(childVm);

                Assert.IsFalse(grantParentVm.DeferValidationUntilFirstSaveValue);
                Assert.IsFalse(parentVm.DeferValidationUntilFirstSaveValue);
                Assert.IsFalse(childVm.DeferValidationUntilFirstSaveValue);

                parentVm.DeferValidationUntilFirstSaveValue = true;

                Assert.IsFalse(grantParentVm.DeferValidationUntilFirstSaveValue);
                Assert.IsTrue(parentVm.DeferValidationUntilFirstSaveValue);
                Assert.IsTrue(childVm.DeferValidationUntilFirstSaveValue);
            }
        private async void btnVas_Click(object sender, RoutedEventArgs e)
        {
            ChildViewModel clickedItem = (ChildViewModel)(sender as Button).DataContext;

            await Launcher.LaunchUriAsync(new Uri(clickedItem.url));
        }
 /// <summary>
 ///     Instantaites a new InvalidPathDialogViewModel.
 /// </summary>
 /// <param name="child">Child to update.</param>
 public InvalidPathDialogViewModel(ChildViewModel child)
 {
     Path = child.Path;
 }
Exemple #25
0
 public ParentViewModel()
 {
     childViewModel = new ChildViewModel(MyAction);
 }
 void Init_ViewModelExtensionsWithService_TestView(out ITestViewServiceBase service, out ChildViewModel childVM, out ParentViewModel parentVM) {
     parentVM = new ParentViewModel() { TestParameter = "parameter" };
     childVM = new ChildViewModel();
     Grid parentView = new Grid();
     service = new TestViewServiceBase();
     Interactivity.Interaction.GetBehaviors(parentView).Add((TestViewServiceBase)service);
     Window.Content = parentView;
 }
 void FinalCheck_ViewModelExtensionsWithService_TestView(ChildViewModel childVM, ParentViewModel parentVM) {
     Grid parentView = (Grid)Window.Content;
     Grid childView = parentView.Children[0] as Grid;
     Assert.AreSame(childVM, childView.DataContext);
     Assert.AreSame(parentVM, ((ISupportParentViewModel)childVM).ParentViewModel);
     Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childVM).Parameter);
 }
 public ShellViewModel(ChildViewModel child)
 {
     Child = child;
 }
Exemple #29
0
 public void LoadFromViewModel(ChildViewModel vm)
 {
     this.comboBox.DataSource = vm.CoordinatesList;
 }
 public void ViewModelExtensionsWithService6_T155859() {
     var parentVM = new ParentViewModel() { TestParameter = "parameter" };
     ChildViewModel childVM = new ChildViewModel();
     Grid parentView = new Grid();
     Grid childView;
     TestViewServiceBase service = new TestViewServiceBase();
     ((TestViewLocator)service.ViewLocator).AllowCaching = true;
     ITestViewServiceBase iService = service;
     Interactivity.Interaction.GetBehaviors(parentView).Add(service);
     Window.Content = parentView;
     EnqueueShowWindow();
     EnqueueCallback(() => {
         iService.CreateChildView("testViewWithViewModel", null, parentVM.TestParameter, parentVM);
     });
     EnqueueWindowUpdateLayout();
     EnqueueCallback(() => {
         parentVM.TestParameter = "parameter2";
         iService.CreateChildView("testViewWithViewModel", null, parentVM.TestParameter, parentVM);
     });
     EnqueueWindowUpdateLayout();
     EnqueueCallback(() => {
         childView = parentView.Children[0] as Grid;
         Assert.AreSame(parentVM, ((ISupportParentViewModel)childView.DataContext).ParentViewModel);
         Assert.AreEqual(parentVM.TestParameter, ((ISupportParameter)childView.DataContext).Parameter);
     });
     EnqueueTestComplete();
 }
Exemple #31
0
 public void RemoveChild(ChildViewModel child)
 {
     Children.Remove(child);
 }
Exemple #32
0
 public void RemoveChild(ChildViewModel child)
 {
     Children.Remove(child);
 }
Exemple #33
0
 void IParentVm.RemoveChild(ChildViewModel child)
 {
     Children.Remove(child);
 }
 public ChangingContextPage PostChildModel(ChildViewModel vm)
 {
     GetComponent <PageAsChildModel>().Input(vm);
     return(Navigate.To <ChangingContextPage>(By.CssSelector("button[type=submit].child-model")));
 }
Exemple #35
0
 void IParentVm.RemoveChild(ChildViewModel child)
 {
     Children.Remove(child);
 }
 protected override void OnInitialize()
 {
     Child = _viewModelFactory.Create <ChildViewModel>()
             .Configure(this);
 }
 public Delete(ChildViewModel child)
 {
     //deletion logic
 }
 public ParentViewModel()
 {
     childViewModel            = new ChildViewModel();
     childViewModel.SomeEvent += someEventHandler;
     // Don't forget to un-subscribe from the event at some point...
 }
        public IActionResult Index()
        {
            var viewModel = new ChildViewModel();

            return(View(viewModel));
        }