Possible Duplicate:
how to add emoticons(smileys) into WPF richtext box




现在,我想知道,如何在WPF中的RichTextBox中添加图释。
例如:当我输入hi :)时,它将在RichTexBox中返回为image(微笑图像)。
希望您能帮助我。如果有人知道解决方案或示例代码

谢谢

最佳答案

没有预解决方案,但是,当您使用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>


那应该给您一个关于如何开始的想法。

10-04 23:33