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(); }
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; }
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(); }
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>(); } }
/// <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; }
// other properties public static ParentViewModel BuildViewModel(Parent parent) { return(new ParentViewModel { Children = parent.Children.Select(c => ChildViewModel.BuildViewModel(c)), // other properties }); }
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 }
private void ShowChildFormModal() { ChildViewModel vm = new ChildViewModel(); vm.CoordinatesList = ... vm.OtherData = ... ChildForm child = new ChildForm(); child.LoadFromViewModel(vm); }
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)); }
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 }; }
/// <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); } }
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")); }
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; }
public ParentViewModel() { childViewModel = new ChildViewModel(MyAction); }
public ShellViewModel(ChildViewModel child) { Child = child; }
public void LoadFromViewModel(ChildViewModel vm) { this.comboBox.DataSource = vm.CoordinatesList; }
public void RemoveChild(ChildViewModel child) { Children.Remove(child); }
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"))); }
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)); }