private void richTextBox1_TextChanged(object sender, EventArgs e)
{
    richTextBox1.SelectionStart = richTextBox1.TextLength;
    richTextBox1.ScrollToCaret();
}

 

richTextBox1.SelectionStart

如果控制項中沒有選取的文字,這個屬性會指示新文字的插入點 (或插入號)。 如果您將這個屬性設定為超過控制項中文字的長度,選取的開始位置會置於最後一個字元的後面。 文字方塊控制項中的文字被選取時,變更這個屬性可能會減少SelectionLength 屬性的值。 如果控制項中 SelectionStart 屬性所指示的位置後面的其餘文字少於 SelectionLength 屬性的值,SelectionLength 屬性的值就會自動減少。 SelectionStart 屬性的值絕對不會使得 SelectionLength 屬性值增加。您可以藉由設定 SelectionStart 和 SelectionLength 屬性,以程式設計方式在文字方塊內移動選取範圍。您可以藉由將 SelectionStart 設定至文字方塊內的位置來以程式設計方式在文字方塊內移動插入號,此文字方塊即是您要移動插入號並將 SelectionLength 屬性設定為零 (0) 值的方塊。TextBox 必須具有焦點,選取範圍或插入號才能夠移動。 在您設定 TextBoxReadOnly 的 SelectionStart 屬性之前,可以先提供它 Focus

richTextBox.ScrolltoCaret()

這個方法能讓您捲動控制項的內容,直到插入號在控制項區域內的可見位置為止。如果插入號位於控制項的可見區域之下,ScrollToCaret 方法會捲動控制項的內容直到插入號可見於控制項下方為止。如果插入號位於控制項的可見區域之上,這個方法會捲動控制項的內容直到插入號可見於控制項上方為止。您可以在多行文字方塊中使用這個方法,來確定目前的文字進入點是在控制項的可見區域之內。

SelectionStart   屬性設置為要選擇的文本的開始位置。 
SelectionStart   屬性是一個數字,指示文本字串的插入點,值為   0   表示最左邊的位置。如果將   SelectionStart   屬性設置為等於或大於文本框內的字元數的值,則插入點被放在最後一個字元後。 

SelectionLength   屬性設置為要選擇的文本的長度。 
SelectionLength   屬性是一個設置插入點寬度的數值。如果將   SelectionLength   設置為大於   0   的數,則會選擇該數目的字元,開始位置是當前插入點。

創作者介紹

Frank's Blog

Frank 發表在 痞客邦 PIXNET 留言(0) 人氣()