如何更改(Telerik)RadRibbonBar标题文本的颜色?

时间:2010-07-17 20:04:19

标签: wpf telerik-radribbonbar

我在我的应用程序中声明了一个Telerik RadRibbonBar,但标题窗口的文本是白色的,看起来像这样:

alt text

在我看来,它看起来很糟糕。有谁知道改变它的方法吗? 这是我正在使用的XAML:

<telerikRibbon:RadRibbonWindow x:Class="TestApp.MainWindow"                   
                               xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"                   
                               xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"                   
                               xmlns:telerik="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls"                   
                               xmlns:telerikRibbon="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.RibbonBar"                                                 
                               Height="300" Width="300">
    <DockPanel LastChildFill="True">
        <telerikRibbon:RadRibbonBar ApplicationName="This text is white and looks awful." DockPanel.Dock="Top" Focusable="False">
            <telerikRibbon:RadRibbonBar.ApplicationMenu>
                <telerikRibbon:ApplicationMenu>
                    <telerikRibbon:RadRibbonButton Text="New"/>
                </telerikRibbon:ApplicationMenu>
            </telerikRibbon:RadRibbonBar.ApplicationMenu>

            <telerikRibbon:RadRibbonTab Header="Home">

            </telerikRibbon:RadRibbonTab>
        </telerikRibbon:RadRibbonBar>

        <Grid DockPanel.Dock="Bottom" Background="White">
        </Grid>
    </DockPanel>
</telerikRibbon:RadRibbonWindow>

1 个答案:

答案 0 :(得分:4)

您要做的是提取RadRibbonBar的模板,对一些Foreground属性稍作修改。提取后,请查找:

PART_ActualWindowTitle

其中涵盖了您所看到的标题。在搜索包含三个文本块(Title,Divider,ApplicationName)的部分下,将XAML更改为:

<StackPanel Orientation="Horizontal">
<TextBlock x:Name="Title" Foreground="{TemplateBinding Foreground}" Text="{TemplateBinding Title}"/>
<TextBlock x:Name="Divider"
            Foreground="{TemplateBinding Foreground}" telerik:LocalizationManager.ResourceKey="RibbonBarWindowTitleDivider" Text=" - "><Run Text=" - "/></TextBlock>
<TextBlock x:Name="ApplicationName"
            Foreground="{TemplateBinding Foreground}" Text="{TemplateBinding ApplicationName}"/>

这将允许您设置<telerik:RadRibbonBar Foreground="ColorYouWant" />,这将反映在标题栏中。您当然可以将其切换为使用硬编码值,来自应用程序中其他位置的资源等,但这是您希望使用的区域,以对应用程序标题产生影响。