public SceneViewModel() { Colors = NamedColorCollection.GetNamedColors(); _selectedColor = Colors.Random(); Grid = new Grid { Length = 5.0D, Segment = 6.0D }; Position = new Point3D(50, 50, 50); for (var x = 0; x < 6; x++) { for (var z = 0; z < 6; z++) { Grid.Place(x, 0, z, new Cube(_selectedColor.Color)); } } Selection = new SelectionViewModel(Grid, CubeHelper.CreateSelection()); Selection.PropertyChanged += (sender, args) => { RaisePropertyChangedEvent(nameof(SelectionTransform)); }; GridView = new GridViewModel(); GridView.PropertyChanged += (sender, args) => { RaisePropertyChangedEvent(nameof(Model)); }; Render(); }