可能重复:
如何将表情符号(笑脸)添加到 WPF 富文本框中
现在,我想知道,如何在 WPF 的 RichTextBox 中添加表情。例如:当我输入 hi :) 时,它将在 RichTexBox 中返回为图像(微笑图像)。我希望,你会帮助我。如果有人知道解决方案或示例代码
谢谢
可能重复:
如何将表情符号(笑脸)添加到 WPF 富文本框中
现在,我想知道,如何在 WPF 的 RichTextBox 中添加表情。例如:当我输入 hi :) 时,它将在 RichTexBox 中返回为图像(微笑图像)。我希望,你会帮助我。如果有人知道解决方案或示例代码
谢谢
对此没有预构建的解决方案,但是,当您使用 WPF 时,您可以通过 TextChanged 事件或通过您的 PropertyChanged(如果它是 MVVM)对 RichTextBox 内的文本更改做出反应。
一旦你知道文本发生了变化,你就可以通过简单的搜索给它通过(有更好的方法来做这个解析,但为了一个简单的例子,只需使用简单的字符串搜索)。如果你找到你想要的文本,我的意思是,与你的笑脸相对应的标记,hi :)
那么你可以通过在 RichTextBox 中使用 FlowDocument 将图像插入该位置
解析前
<RichTextBox>
<FlowDocument>
<Paragraph>
<Run>Hello :) world!</Run>
</Paragraph>
</FlowDocument>
</RichTextBox>
解析后
<RichTextBox>
<FlowDocument>
<Paragraph>
<Span>
<Run Text="Hello"/>
<Image Width="16" Source="Your emoticon source"/>
<Run Text=" world"/>
</Span>
</Paragraph>
</FlowDocument>
</RichTextBox>
这应该让你知道如何开始。