是否可以在Silverlight中选择性地为标签着色?

joe*_*moe 5 silverlight layout fonts xaml

例如,如果我有一个标签:

Blah blah bladity blah

我想要这个标签的前10%,这样字体颜色应该是红色,其余颜色应该是绿色.

这或许意味着它会使B1和PART的颜色变亮.基本上是像素方式字体着色而不是字符方式.这是可能的,如何实现?

Tod*_*ain 5

是的,它会是这样的:

<Canvas>
    <dataInput:Label Background="White" >
    <dataInput:Label.Foreground>
        <LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
            <GradientStop Color="Red" Offset="0.1"/>
            <GradientStop Color="Green" Offset="0.1"/>
        </LinearGradientBrush>
    </dataInput:Label.Foreground>
    Blah blah bladity blah
    </dataInput:Label>
</Canvas>
Run Code Online (Sandbox Code Playgroud)

为了具有渐变效果,您需要将两者都设置Offset为相同的值.

注意:在这个字体大小(标准,没有改变)中,"B"和"l"是红色的,只有一小部分"a".但"0.1" Offset表示10%,因此您可以减小字体大小或更改Offset值.