Xaml WP8文本块文本具有特定字符的颜色层

Xaml WP8文本块文本具有特定字符的颜色层,xaml,windows-phone-8,Xaml,Windows Phone 8,我需要防止TextBlock更改特殊字符的颜色,看起来WP TextBlock将某些形状识别为表情符号并对其着色,但似乎无法像在Windows 8中那样控制它,如本文所述: WP中没有IsColorFontEnabled,有人知道如何覆盖此行为吗 问题在于心脏的性格♥, 我不想使用心形路径列表 编辑:我已经使用了❤ 字符,但其间距和颜色与普通字符不同,我认为唯一的方法是使用具有此形状的路径列表:( 谢谢您可以通过将IsReadOnly属性设置为true,使RichTextBox的行为类似于T

我需要防止TextBlock更改特殊字符的颜色,看起来WP TextBlock将某些形状识别为表情符号并对其着色,但似乎无法像在Windows 8中那样控制它,如本文所述:

WP中没有IsColorFontEnabled,有人知道如何覆盖此行为吗

问题在于心脏的性格♥, 我不想使用心形路径列表

编辑:我已经使用了❤ 字符,但其间距和颜色与普通字符不同,我认为唯一的方法是使用具有此形状的路径列表:(


谢谢

您可以通过将IsReadOnly属性设置为true,使RichTextBox的行为类似于TextBlock。它看起来与TextBlock相似,而TextBox则不同

我不确定你是否能用这个想法控制表情符号的问题,你必须进行测试,但它确实允许你完全控制文本的颜色

XAML

<StackPanel x:Name="ContentPanel"
          Grid.Row="1"
          Margin="12,0,12,0">
<!-- One Color-->
  <RichTextBox Foreground='White'>
    <Paragraph>Text with ☻</Paragraph>
  </RichTextBox>

  <!-- Multi color -->
  <RichTextBox IsReadOnly='True'>
    <Paragraph>
      <Run>Mixed Colors.</Run>
      <Run Foreground='Red'
           FontWeight='Bold'>☺</Run>
      <Run Foreground='Yellow'>☻</Run>
      <Run Foreground='LightGreen'>♫</Run>

    </Paragraph>
  </RichTextBox>
    </StackPanel>

文本与☻
混合颜色。
☺
☻
♫
输出


我应该更透彻地阅读这个问题,我发布了一个关于如何使文本着色而不是删除颜色的答案。您好,谢谢,但不幸的是,richtextbox设置为只读时无法使用,仍然显示表情符号coloredGood,这不能解决您的问题。