lac*_*cop 13 wpf chat textblock
我正在开发一个简单的聊天应用程序.目前,消息被绑定到这样的自定义样式列表框(简化的XAML):
<ListBox ItemsSource="{Binding MessageCollection}">
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Text}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Run Code Online (Sandbox Code Playgroud)
现在我希望能够将图像(如图形表情符号)放入显示的消息文本中.有没有办法使用TextBlock(或任何其他标准组件)来实现这一点,还是我需要使用一些特殊的控件?
提前致谢
小智 44
只需使用InlineUIContainer.
<TextBlock TextWrapping="Wrap">
<Run>Some text.</Run>
<InlineUIContainer>
<Image Source="http://sstatic.net/stackoverflow/img/apple-touch-icon.png" Height="20"></Image>
</InlineUIContainer>
<Run>Some more text.</Run>
</TextBlock>
Run Code Online (Sandbox Code Playgroud)
如果您希望图像实际上位于文本内(如表情符号),那么您将需要做一些工作。这听起来像是我真正想要一个用户控件的少数情况之一,其要点是扫描文本以查找表情符号值并动态构建数据模板。
请记住,您可以在 XAML 中执行的任何操作都可以在代码中执行,因此我正在考虑的代码将遵循以下总体思路:
我认为这样的东西实际上就是您正在寻找的东西,但如果您只想要一个图像,那么 ValueConverter 建议会起作用。
| 归档时间: |
|
| 查看次数: |
16849 次 |
| 最近记录: |