WP8 TextBlock文本具有某些字符的颜色层

时间:2014-03-05 16:44:58

标签: xaml windows-phone-8

我需要阻止TextBlock更改特殊字符的颜色,看起来WP TextBlock将某些形状识别为emojis并对它们进行着色但似乎没有办法像Windows 8中那样控制它,如本文所述:

http://blogs.windows.com/windows/b/appbuilder/archive/2013/11/11/xaml-text-improvements-in-windows-8-1.aspx http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.controls.textbox.iscolorfontenabled.aspx

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

问题在于心脏角色♥,我不想使用心形路径列表

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

由于

1 个答案:

答案 0 :(得分:0)

通过将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>

<强>输出

enter image description here