2016-05-02 74 views
0

我在這的WinForms我使用的WinForms下面的代碼格式文本框:格式文本框WPF startselection和長度

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

這工作完全不過我現在重新實現在WPF因此用戶控制使用System.Windows.Controls中包含的Rich Text Box,但是它沒有任何這些功能,我可以從MSDN文檔或在線任何地方找到它們。有關如何實現上述代碼以獲取豐富文本框的開始和長度以及在WPF中進行滾動字詞的任何想法?

+0

這看起來像你的解決方案:http://stackoverflow.com/questions/13621549/where-is-scrolltocaret-in-a-textbox-in-wpf – frooook

+0

該解決方案是一個標準的文本框不豐文本框。 – Naive

回答

0

說你有一個像這樣在WPF一個RichTextBox:

<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; 
     }