WPF,控件中字符串颜色设置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF,控件中字符串颜色设置相关的知识,希望对你有一定的参考价值。

WPF有没有提供控件,使得其中的一个字符串能够显示多种颜色。
如果有麻烦给个示例

参考技术A Sure:

<TextBlock x:Name="tb">
<Run Foreground="Red">R</Run>
<Run Foreground="Green">G</Run>
<Run Foreground="Blue">B</Run>
<Run Text="Gradient">
<Run.Foreground>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF000000" Offset="0"/>
<GradientStop Color="#FFFFFFFF" Offset="1"/>
</LinearGradientBrush>
</Run.Foreground>
</Run>
</TextBlock>

----------------
在逻辑代码中 Text 属性不应使用, 应访问 TextBlock 的 Inlines 集合来得到它所包含的字串:
string s="";
foreach(Run r in tb.Inlines)
s += r.Text;
System.Windows.MessageBox.Show(s);
// 对于上面的例子, s 的值显示为 "r g b gradient".本回答被提问者采纳
参考技术B <Label Height="28" Margin="49,94,109,0" Name="label1" VerticalAlignment="Top" Content="aaaaaaaaaaaa">
<Label.Foreground>
<LinearGradientBrush>
<GradientStop Color="Red" Offset="0.25" />
<GradientStop Color="Blue" Offset="0.25" />
<GradientStop Color="Green" Offset="0.25" />
<GradientStop Color="Yellow" Offset="0.25" />
<GradientStop Color="Gold" Offset="0.25" />
</LinearGradientBrush>
</Label.Foreground>
</Label>

wpf 控件四周扩散颜色

参考技术A 如果想让WPF的控件上下或者左右呈现出不同的两种颜色。
可以选中控件->属性->画笔->渐变画笔,选择后在代码中也可以在选色器中选择需要的颜色。如果要这种颜色风格应用到其他控件中,则将该段代码选中,选择属性->画笔->将值提取到资源,在弹出窗口中,输入名称即可。在下次要用到此风格时,只需将控件绑定到该资源即可。

以上是关于WPF,控件中字符串颜色设置的主要内容,如果未能解决你的问题,请参考以下文章

VS2015C#WPF中label控件内的字体颜色怎样改变

WPF,DataGrid怎么设置列标题分割线的颜色

WPF 实现换肤功能

wpf datagrid 滚动条如何设置宽度和颜色

WPF DevExpress设置GridControl TableView行颜色,

求C#代码,控制WPF控件颜色变化