【问题标题】:Implementing Emoticon in windows store chat在 windows 商店聊天中实现表情
【发布时间】:2014-05-14 05:47:24
【问题描述】:

我正在开发一个 Windows 应用商店聊天应用程序。

在这个应用程序中,我使用TextBox 来接收来自用户的消息内容。我想实现表情符号(笑脸),以便输入代码会给出与文本内联的相应图像。

例如,对于:),我想要一个“微笑”图像。

【问题讨论】:

    标签: windows xaml windows-store-apps winrt-xaml


    【解决方案1】:

    您需要做的是使用RichTextBlock 来显示您的文本。这将使您可以在必要时访问 InlineUIContainer 块。

    因此,您的流程将是:

    • 接受常规文本框中的文本
    • 将文本解析成一系列Inlines(RunInlineUIContainer等)
    • 为消息创建一个新的Paragraph
    • Inliness 添加到Paragraph
    • Paragraph 添加到您的RichTextBlockBlocks 属性(BlockCollection)。

    对于每一段文字:

    • Split 文本,可能使用Regex,搜索触发Image 的键(':)'、'(heart)' 等)。
    • 对于每个非图像文本,创建一个 Run 并将 Text 设置为拆分的文本
    • 为每个Image 创建一个InlineUIContainer 和一个Image。将Image源设置为正确的Image路径,然后将InlineUIContainerChild设置为Image
    • 通过Paragraph.Blocks.Add(Inline)添加RunInlineUIContainerParagraph

    某些图标可能包含在Segoe UI Symbol 字体系列中。如果是这种情况,您可以选择不为该符号使用Image,而是使用Run 并将FontFamily 设置为Segoe UI Symbol。如果你想让FontSize 更显眼,你可以试试看。

    希望这对编码有所帮助!

    【讨论】:

    • 你能提供一些有用的链接吗,我搜索了很多但无法获得这些有用的链接。
    • Mr.Nate Diamond 终于从你建议的过程中得到了解决方案,我非常感谢你的好意建议。你的希望成真了,它帮助了我,快乐的编码。 :)
    猜你喜欢
    • 2011-12-21
    • 1970-01-01
    • 1970-01-01
    • 2012-05-09
    • 2011-06-01
    • 1970-01-01
    • 2015-05-17
    • 2017-06-26
    • 2015-02-23
    相关资源
    最近更新 更多