【问题标题】:Rich Text Box WPF startselection and length富文本框 WPF 开始选择和长度
【发布时间】:2016-05-03 00:43:27
【问题描述】:

我有一个富文本框,在 WinForms 中我在 Winforms 中使用以下代码:

private void logRichTextBox_TextChanged(object sender, EventArgs e)
    {
        logRichTextBox.SelectionStart = logRichTextBox.Text.Length;
        logRichTextBox.ScrollToCaret();
    }  

这很好用,但是我现在正在 WPF 中重新实现用户控件,因此使用 System.Windows.Controls 中包含的富文本框,但是它没有我可以从 MSDN 文档或任何在线网站上找到的任何这些功能.关于如何实现上述代码以获取富文本框的开始和长度以及在 WPF 中滚动到插入符号的任何想法?

【问题讨论】:

标签: c# wpf winforms


【解决方案1】:

假设你在 wpf 中有一个这样的富文本框:

<RichTextBox x:Name="richTextBox" HorizontalAlignment="Left" Height="296" VerticalAlignment="Top" Width="507" TextChanged="RichTextBox_OnTextChanged">
            <FlowDocument>
                <Paragraph>
                    <Run Text="RichTextBox"/>
                </Paragraph>
            </FlowDocument>
        </RichTextBox>

您现在可以挂钩偶数,它会带来所需的行为。

 private void RichTextBox_OnTextChanged(object sender, TextChangedEventArgs e)
        {
            this.richTextBox.CaretPosition = this.richTextBox.Document.ContentEnd;
        }

【讨论】:

  • 不得不评论的是,这个解决方案只有助于将插入符号(指针)带到末尾,不能将视图更改到末尾。您需要滚动到它。
猜你喜欢
  • 2011-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多