TextBoxBase.ScrollToCaret 方法

定义

将控件内容滚动到当前插入符号位置。

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

示例

下面的代码示例演示如何使用 Keys 枚举和 ScrollToCaret 方法,以确保在按下 Enter 键后,由插入点表示的文本插入点始终在屏幕上可见。 若要运行该示例,请将以下代码粘贴到包含 TextBox 名为 的 TextBox1 控件和 RichTextBox 名为 的控件的 RichTextBox1窗体中。 此示例要求事件处理方法已与 事件 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 方法将滚动控件的内容,直到在控件底部显示插入点。 如果插入点位于控件的可见区域上方,此方法将滚动控件的内容,直到在控件顶部显示插入点。 可以在多行文本框中使用此方法,以确保当前文本入口点位于控件的可见区域内。

注意

如果控件没有焦点,或者插入符号已定位在控件的可见区域中,则此方法不起作用。

适用于