我正在开发一个Windows应用商店聊天应用。
在此应用中,我使用TextBox
来接收用户的消息内容。我想实现表情符号(Smileys),这样键入代码就会给出与文本内联的相应图像。
例如,对于:)
,我想要一个微笑'图像。
答案 0 :(得分:0)
您需要做的是使用RichTextBlock
来显示文字。这样,您就可以在必要时访问InlineUIContainer
块中的添加内容。
因此,您的流程将是:
Inline
s(Run
,InlineUIContainer
等)Paragraph
Inlines
添加到Paragraph
。Paragraph
添加到RichTextBlock
的{{1}}媒体资源(Blocks
)。对于每一段文字:
BlockCollection
文字,可能使用Split
,搜索触发Regex
(':)','(心)'等的键。Image
,并将Run
设置为拆分文本Text
,请创建Image
和InlineUIContainer
。将Image
来源设置为正确的Image
路径,然后将Image
的{{1}}设置为Child
。InlineUIContainer
添加Image
或Run
InlineUIContainer
。 Paragraph
字体系列中可能包含某些图标。如果是这种情况,您可以选择不对该符号使用Paragraph.Blocks.Add(Inline)
,而是使用Segoe UI Symbol
并Image
设置为Run
。如果您希望它们更加突出,您可以使用FontFamily
。
希望这有助于编码!