2013-02-04 43 views
12

我有2 Label s在StackPanelForeground颜色设置为他们两个... 第二个显示为黑色,当它不应该。WPF标签前景色

<StackPanel HorizontalAlignment="Right" Orientation="Horizontal" Grid.Column="4" Grid.Row="0" Width="Auto" Margin="0,0,20,0"> 
    <Label Content="{lex:LocText CGI, Suffix=:}" Foreground="#FFE0E0E0" FontSize="24" VerticalAlignment="Bottom" Margin="0,0,0,10" HorizontalAlignment="Right" /> 
    <Label Content="{Binding Cgi}" ContentStringFormat="{}{0}%" Foreground="#FFE0E0E0" FontSize="24" VerticalAlignment="Bottom" Margin="0,0,0,10" HorizontalAlignment="Right" /> 
</StackPanel> 

有什么我做错了吗?

回答

13

我检查了你的XAML,它工作正常 - 例如两个标签都有一个灰色的前景。
我的猜测是,你有一些风格这是影响它的样子......

试试你的XAML移动到一个全新的窗口,看看自己......然后,检查是否有任何题材或样式(例如Window.Resources),这可能会影响标签...

+1

您的猜测是正确的。我注意到这种行为,因为我们添加了Metro风格。没想到这一点。 – JuHwon

+12

仅仅因为我搜索了如何更改标签的颜色,并且将它带到了这里,我想补充一点,如果您只是想在代码文件中更改标签的颜色,则应该这样做:'lblStatus.Foreground =新的SolidColorBrush(Colors.Red);' – Ortund

+4

或少一点代码,'lblStatus.Foreground = Brushes.Red;' –