簡體   English   中英

WPF中輸出文本框的行數限制

[英]Line limit for an output textbox in WPF

我的應用程序中有一個文本框輸出。 我想添加一個功能,當文本框達到某個限制(例如100行)時,該功能將開始刪除舊行。 我該怎么做?

我正在使用AppendText和ScrollToEnd方法來更新我的文本框。

謝謝。

代碼:這里沒有什么特別的。

XAML-

<TextBox ScrollViewer.HorizontalScrollBarVisibility="Disabled" ScrollViewer.VerticalScrollBarVisibility="Auto" Margin="12,6,6,12" x:Name="Output" IsReadOnly="True" Grid.Row="1" />

xaml.cs

private void WorkerProgressChanged(object sender, ProgressChangedEventArgs e)
{
    Output.AppendText(string.Format("{0} --- {1}", DateTime.Now, e.UserState));
    Output.ScrollToEnd();
}

這段代碼是為Winform應用程序編寫的,但是您也可以在wpf applicaton中使用它:

             private void richTextBox1_TextChanged(object sender, EventArgs e)
    {
        string[] lines = richTextBox1.Lines;
        int x = lines.Length;
        if(x>100)
        {
           richTextBox1.Lines = richTextBox1.Lines.Skip(x - 100).ToArray();
           richTextBox1.ScrollToCaret();
           richTextBox1.Select(richTextBox1.Text.Length, 0);

        }
    }

希望這可以幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM