移动到只读TextBox中文本的末尾

本文关键字:文本 中文 只读 TextBox 移动 | 更新日期: 2023-09-27 18:27:42

我目前在WPF应用程序中有一个只读的TextBox:

<TextBox x:Name="TextBox_CurrentDirectory" IsReadOnly="True"></TextBox>

代码背后的文本得到更新:

private void Window_Loaded(object sender, RoutedEventArgs e)
{
    var app = Application.Current as App;
    TextBox_CurrentDirectory.Text = app.ActiveDirectory;
    //Show the end of the text here
}

有没有一种方法可以让我以编程方式显示文本的末尾?如果TextBox中的文本比TextBox长,它只显示开始并被截断。我希望能够显示文本的结束。

我试过使用

TextBox_CurrentDirectory.CaretIndex = TextBox_CurrentDirectory.Text.Length;

但什么也没发生。

移动到只读TextBox中文本的末尾

在设置CaretIndex之前,您需要提供TextBox Focus。

TextBox_CurrentDirectory.Text = app.ActiveDirectory;
TextBox_CurrentDirectory.Focus();
TextBox_CurrentDirectory.CaretIndex = TextBox_CurrentDirectory.Text.Length;