我正在制作一个WPF聊天信使,我已经使用C#富文本框来显示聊天,但我正在尝试自定义尼克和一些文本对齐,富文本框有文本是由附加文本使用代码,我不知道如何自定义它,我附上了更多的解释

我希望这个日期左对齐,并且昵称应该是蓝色的。我认为我们不能在富文本框中使用HTML文本,或者自定义文本的解决方案是什么,我应该使用一些标签,还是什么,请让我知道更好的解决方案。
发布于 2012-01-10 06:00:54
使用FlowDocument并在发送/接收每条消息时附加到文档内容(click for more info)可能会更好。
发布于 2012-01-10 14:23:31
我认为在代码中必须使用/b来表示粗体。因此,在本例中,您的代码将如下所示
rtextbox.Text = "/bHello/b";如果起作用了,请告诉我。
编辑,因为第一个解决方案不起作用:
1选择要转换的文本:
rtb.select(Start , Length of string)2创建具有正确属性的字体,并将其添加到所选内容中
rtb.Selectionfont = new Font(rtb.SelectionFont, FontStyle.Bold)发布于 2012-01-17 14:01:52
每次创建一个新的跨度并添加它,而不是附加文本。
Span nick = new Span();
nick.Foreground = Brushes.Blue;
Span date = new Span();
date.FontWeight = FontWeights.Bold;
Paragraph para = new Paragraph();
para.Inlines.Add(nick);
para.Inlines.Add(date);
FlowDocument d = new FlowDocument();
d.Blocks.Add(para);
rtb.Document = d;希望这能有所帮助。
致以敬意,
贾瓦哈
https://stackoverflow.com/questions/8795738
复制相似问题