private void PaintTheTextBoxes() { var prevBefore = rtbBefore.SelectionStart; var prevAfter = rtbAfter.SelectionStart; rtbBefore.SuspendLayout(); rtbAfter.SuspendLayout(); ResetColor(rtbBefore); ResetColor(rtbAfter); foreach (var added in _codeDiff.GetAdded()) { ColorSection(rtbAfter, added.After.Span.Start, added.After.Span.Length, Color.LightGreen); } foreach (var added in _codeDiff.GetRemoved()) { ColorSection(rtbBefore, added.Before.Span.Start, added.Before.Span.Length, Color.LightSalmon); } foreach (var added in _codeDiff.GetModified()) { ColorSection(rtbAfter, added.After.Span.Start, added.After.Span.Length, Color.LightGreen); ColorSection(rtbBefore, added.Before.Span.Start, added.Before.Span.Length, Color.LightSalmon); } rtbBefore.ResumeLayout(); rtbAfter.ResumeLayout(); rtbBefore.SelectionStart = prevBefore; rtbBefore.SelectionLength = 0; rtbAfter.SelectionStart = prevAfter; rtbAfter.SelectionLength = 0; }