WPF Richtextbox有多种颜色和字体

时间:2017-01-19 23:21:57

标签: wpf-controls vb.net-2010

    Public Sub ChatMessage(ByVal sUser As String, ByVal sMessage As String)
    Dim tmpData As String = sUser & ":" & vbTab & sMessage
    Dim p As Paragraph = New Paragraph(New Run(tmpData))
    p.Foreground = System.Windows.Media.Brushes.LightGreen
    p.FontSize = 12
    p.Margin = New System.Windows.Thickness(0, 0, 0, 0)

    RoomMessages.RichTextBox.Document.Blocks.Add(p)
    RoomMessages.RichTextBox.ScrollToEnd()      

End Sub

我已将名为RoomMessages的WPF Richtextbox添加到Windows窗体中。 我可以使用上面的代码添加文本,它可以用于添加1种颜色和字体的文本。我需要能够在将单词添加到richtextbox之前更改单词的颜色。我已经搜索了几天但没有运气。

我见过使用TextRange或TextBlocks的C#代码,但是他们能够让它们在VB中工作

1 个答案:

答案 0 :(得分:0)

         tUser.Text = sUser & ":"
    tUser.Foreground = New System.Windows.Media.SolidColorBrush(System.Windows.Media.Colors.LightGreen)

    tMessage.Text = sMessage
    tUser.Foreground = New System.Windows.Media.SolidColorBrush(System.Windows.Media.Colors.White)

    P.Inlines.Add(tUser)
    P.Inlines.Add(tMessage)

    P.FontSize = 12
    p.Margin = New System.Windows.Thickness(0, 0, 0, 0)