TextBoxBase.ScrollToCaret メソッド

定義

コントロールの内容を現在のキャレット位置までスクロールします。

public:
 void ScrollToCaret();
public void ScrollToCaret();
member this.ScrollToCaret : unit -> unit
Public Sub ScrollToCaret ()

次のコード例では、 Keys 列挙体と ScrollToCaret メソッドを使用して、キャレットで表されるテキスト挿入ポイントが、Enter キーを押した後に常に画面に表示されるようにする方法を示します。 この例を実行するには、TextBox1 というTextBox コントロールと RichTextBox1 というRichTextBox コントロールを含むフォームに、次のコードを貼り付けます。 この例では、イベント処理メソッドが KeyDown イベントに関連付けられている必要があります。

private:
   //Handles the Enter key being pressed while TextBox1 has focus. 
   void TextBox1_KeyDown( Object^ /*sender*/, KeyEventArgs^ e )
   {
      TextBox1->HideSelection = false;
      if ( e->KeyCode == Keys::Enter )
      {
         e->Handled = true;

         // Copy the text from TextBox1 to RichTextBox1, add a CRLF after 
         // the copied text, and keep the caret in view.
         RichTextBox1->SelectedText = String::Concat( TextBox1->Text, "\r\n" );
         RichTextBox1->ScrollToCaret();
      }
   }
//Handles the Enter key being pressed while TextBox1 has focus. 
private void TextBox1_KeyDown(object sender, KeyEventArgs e)
{
    TextBox1.HideSelection = false;
    if (e.KeyCode==Keys.Enter)
    {
        e.Handled = true;

        // Copy the text from TextBox1 to RichTextBox1, add a CRLF after 
        // the copied text, and keep the caret in view.
        RichTextBox1.SelectedText = TextBox1.Text + "\r\n";
        RichTextBox1.ScrollToCaret();
    }
}
'Handles the Enter key being pressed while TextBox1 has focus. 
Private Sub TextBox1_KeyDown(ByVal sender As Object, _
    ByVal e As KeyEventArgs) Handles TextBox1.KeyDown
    TextBox1.HideSelection = False
    If e.KeyCode = Keys.Enter Then
        e.Handled = True

        ' Copy the text from TextBox1 to RichTextBox1, add a CRLF after 
        ' the copied text, and keep the caret in view.
        RichTextBox1.SelectedText = TextBox1.Text + _
            Microsoft.VisualBasic.vbCrLf
        RichTextBox1.ScrollToCaret()
    End If
End Sub

注釈

このメソッドを使用すると、キャレットがコントロールの可視領域内にあるまで、コントロールの内容をスクロールできます。 キャレットがコントロールの可視領域の下に配置されている場合、 ScrollToCaret メソッドは、キャレットがコントロールの下部に表示されるまでコントロールの内容をスクロールします。 キャレットがコントロールの可視領域の上に配置されている場合、このメソッドは、キャレットがコントロールの上部に表示されるまでコントロールの内容をスクロールします。 複数行テキスト ボックスでこのメソッドを使用すると、現在のテキスト エントリ ポイントがコントロールの表示領域内にあることを確認できます。

Note

このメソッドは、コントロールにフォーカスがない場合や、キャレットがコントロールの可視領域に既に配置されている場合は効果がありません。

適用対象