public void UpdateContentControl() { this.contentControl.Children.Clear(); // TODO: place calculated results in cache var isRotated = ((this.Rot == Rotation.R90) || (this.Rot == Rotation.R270)); var gridLines = GridCreator.CreateGrid(this.gridMode, this.RenderWidth, this.RenderHeight, isRotated); var lines = GridCreator.Transform(gridLines, this.rotation, this.isFlippedHorizontal, this.isFlippedVertical, this.RenderWidth, this.RenderHeight); for (var i = 0; i < lines.Length; i++) { this.contentControl.Children.Add(CreateLine(lines[i].p1.X, lines[i].p1.Y, lines[i].p2.X, lines[i].p2.Y)); } base.OnPropertyChanged("CaptionText"); }