TextBoxBase.ScrollToCaret 方法

定义

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

public void ScrollToCaret();

示例

下面的代码示例演示如何使用 Keys 枚举和 ScrollToCaret 方法,以确保在按下 Enter 键后,由插入点表示的文本插入点始终在屏幕上可见。 若要运行该示例,请将以下代码粘贴到包含 TextBox 名为 的 TextBox1 控件和 RichTextBox 名为 的控件的 RichTextBox1窗体中。 此示例要求事件处理方法已与 事件 KeyDown 相关联。

//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();
    }
}

注解

使用此方法可以滚动控件的内容,直到插入点位于控件的可见区域内。 如果插入点位于控件的可见区域下方,则 ScrollToCaret 方法将滚动控件的内容,直到在控件底部显示插入点。 如果插入点位于控件的可见区域上方,此方法将滚动控件的内容,直到在控件顶部显示插入点。 可以在多行文本框中使用此方法,以确保当前文本入口点位于控件的可见区域内。

备注

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

适用于

产品 版本
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10