public void DifferentTypesAndNonConvertibleValueFromUIToModel() { var synchronizer = new DataContextChangeSynchronizer(new DataContextChangeSynchronizer.BindingSource(new PropertyPath("IntProp"), _viewModel), new DataContextChangeSynchronizer.BindingTarget(_guiObject, SamplePerspexObject.StringProperty), _repo); synchronizer.StartUpdatingSourceWhenTargetChanges(); _guiObject.String = ""; Assert.Equal(default(int), _viewModel.IntProp); }
public void SameTypesFromModelToUI() { var synchronizer = new DataContextChangeSynchronizer(new DataContextChangeSynchronizer.BindingSource(new PropertyPath("IntProp"), _viewModel), new DataContextChangeSynchronizer.BindingTarget(_guiObject, SamplePerspexObject.IntProperty), _repo); synchronizer.StartUpdatingTargetWhenSourceChanges(); _viewModel.IntProp = 2; Assert.Equal(2, _guiObject.Int); }
public void SameTypesFromUIToModel() { var synchronizer = new DataContextChangeSynchronizer(new DataContextChangeSynchronizer.BindingSource(new PropertyPath("IntProp"), _viewModel), new DataContextChangeSynchronizer.BindingTarget(_guiObject, SamplePerspexObject.IntProperty), _repo); synchronizer.StartUpdatingSourceWhenTargetChanges(); const int someValue = 4; _guiObject.Int = someValue; Assert.Equal(someValue, _viewModel.IntProp); }
public void GrokysTest() { var mainWindowViewModel = new MainWindowViewModel(); var contentControl = new ContentControl(); var synchronizer = new DataContextChangeSynchronizer(new DataContextChangeSynchronizer.BindingSource(new PropertyPath("Content"), mainWindowViewModel), new DataContextChangeSynchronizer.BindingTarget(contentControl, ContentControl.ContentProperty), _repo); synchronizer.StartUpdatingTargetWhenSourceChanges(); var logInViewModel = new LogInViewModel(); mainWindowViewModel.Content = logInViewModel; Assert.Equal(logInViewModel, contentControl.Content); }