2011-01-12 64 views
1

在MS Silverlight日历控件的顶部,它显示月份/年份和一些箭头以滚动浏览这些内容。这些项目背后是一个淡蓝色的矩形。我希望能够改变矩形的颜色。我会怎么做呢?如何更改MS Silverlight日历控件中蓝色边框的颜色?

我首先想到的是在Blend打开日历控件,选择编辑模板/拷贝,就浏览到正确的控制,但道路是没有那么明显,也不是我所希望的那样成为可能。打开控件的副本(模板)使我几乎没有工作。事实上,它所做的只是让我改变背景(整个控制,而不仅仅是月/年)和边界。嗯。

也有编辑CalendarButtonStyle,CalendarDayButtonStyle和CalendarItemStyle的UI选项。 CalendarItemStyle似乎与我想要的最接近,但如果我能弄清楚蓝色矩形/边框/面板/来自哪里的话,我会被诅咒的?

回答

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>