This is one way to do it.
int markIndex = 0;
int startIndex = 0;
do
{
markIndex = startIndex + 19;
richTextBoxColumns.Select(markIndex, 1);
richTextBoxColumns.SelectionBackColor = Color.Yellow;
richTextBoxColumns.SelectionColor = Color.Red;
startIndex = richTextBoxColumns.Text.IndexOf('\n', startIndex + 1);
} while (startIndex >= 0) ;
richTextBoxColumns.SelectedText = "";
The problem you will have is that you need to use a font with equal character spacing, such as
Courier New
, otherwise your vertical line will be less than straight.
white space still seems to be a problem, though.
Anyone else that have a solution for that?