如何在MS Silverlight日历控件中更改蓝色边框的颜色?

时间:2011-01-12 16:36:54

标签: silverlight controls calendar

在MS Silverlight日历控件的顶部,它显示月/年和一些箭头以滚动它们。在这些项目后面是一个浅蓝色矩形。我希望能够改变那个矩形的颜色。我该怎么做呢?

我的第一个想法是在Blend中打开日历控件,选择编辑模板/副本并导航到正确的控件,但是这条路径并不像我希望的那样明显。打开控件的副本(模板)让我很少使用。事实上,它所做的只是允许我改变背景(对于整个控件,而不仅仅是月/年)和边框。嗯。

UI中还有一些选项可用于编辑CalendarButtonStyle,CalendarDayButtonStyle和CalendarItemStyle。 CalendarItemStyle似乎最接近我想要的,但如果我能弄明白蓝色矩形/边框/面板/来自何处,我会被诅咒吗?

1 个答案:

答案 0 :(得分:1)

日历控件的默认背景实际上是一个从上到下的4档线性渐变,它为标题的浅蓝色背景和日历其余部分的白色背景提供颜色。

您实际上根本不需要对控件进行模板化以调整此背景渐变。您可以将日历的背景设置为LinearGradientBrush,其偏移量为0.16(默认百分比,从标题更改为日历正文)。

以下是XAML中将标题背景从默认的#FFD3DEE8更改为黑色的示例:

<controls:Calendar>
    <controls:Calendar.Background>
        <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
            <GradientStop Color="Black" Offset="0"/>
            <GradientStop Color="Black" Offset="0.16"/>
            <GradientStop Color="#FFFCFCFD" Offset="0.16"/>
            <GradientStop Color="White" Offset="1"/>
        </LinearGradientBrush>
    </controls:Calendar.Background>
</controls:Calendar>