Непоследовательные результаты с RichTextBox ScrollToCaret

Я работаю с RichTextBox в C #. Он существует на вкладке. Когда TabPage выбран, я стремлюсь заполнить RichTextBox и прокрутить до конца. Я попробовал небольшие вариации решений этого общего вопроса, основной из которых заключается в следующем:

MyRichTextBox.Select(MyRichTextBox.Text.Length, 0);  
MyRichTextBox.ScrollToCaret();  

или же:

MyRichTextBox.SelectionStart = MyRichTextBox.Text.Length;  
MyRichTextBox.ScrollToCaret();  

Это дает противоречивые результаты, хотя и предсказуемым образом. Он будет чередоваться между прокруткой вниз и прокруткой на одну строку ниже дна. Соответственно проиллюстрировано (извините за ссылки, новый пользователь, поэтому я не могу опубликовать изображения):
Успешно прокручен вниз
Прокручивается на одну строчку ниже дна
Я удивлен, что ничего не упомянул об этом поведении в своих поисках, и решил спросить, сталкивался ли кто-нибудь здесь с этим и / или имеет ли решение в уме. Если это сводится к этому, я полагаю, я могу пойти с чем-то вродеего ответ.

Ответы на вопрос(4)

Ваш ответ на вопрос