Lah*_*age 1 format wpf append richtextbox
我使用WPF开发了一个小型聊天客户端.在每个聊天窗口中,它包含一个用于显示以前聊天对话的richtextbox和一个带有发送按钮的文本框,用于键入聊天消息.我想格式化richtextbox中的显示文本,如下所示.
用户1: chat message goes here
目前,我使用AppendText函数将聊天对话附加到richtextbox.我的代码看起来像这样,
this.ShowChatConversationsBox.AppendText(from+": "+text);
Run Code Online (Sandbox Code Playgroud)
但是通过这种方式,我找不到一种方法来格式化上面显示的文本.有没有办法做到这一点?或任何替代方法?
谢谢
您可以直接与FlowDocument交互以添加富文本,而不是与RichTextBox交互.将RichTextBox上的Document设置为包含Paragraph的FlowDocument,并将Inline对象(如Run或Bold)添加到Paragraph中.您可以通过在段落或内联上设置属性来设置文本格式.例如:
public MainWindow()
{
InitializeComponent();
this.paragraph = new Paragraph();
this.ShowChatConversationsBox.Document = new FlowDocument(paragraph);
}
private Paragraph paragraph;
private void Button_Click(object sender, RoutedEventArgs e)
{
var from = "user1";
var text = "chat message goes here";
paragraph.Inlines.Add(new Bold(new Run(from + ": "))
{
Foreground = Brushes.Red
});
paragraph.Inlines.Add(text);
paragraph.Inlines.Add(new LineBreak());
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5030 次 |
| 最近记录: |