<!--
DayHeaders
-->
< Grid x:Name ="DayHeaders" Grid.Column ="1" >
< Grid.ColumnDefinitions >
< ColumnDefinition />
< ColumnDefinition />
< ColumnDefinition />
< ColumnDefinition />
< ColumnDefinition />
< ColumnDefinition />
< ColumnDefinition />
</ Grid.ColumnDefinitions >
< DateControls:MonthCalendarDayHeader Grid.Column ="0" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=0,RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="1" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=1, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="2" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=2, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="3" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=3, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="4" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=4, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="5" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=5, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="6" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=6, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
</ Grid >
<!-- DayHeaders -->
< Grid x:Name ="DayHeaders" Grid.Column ="1" >
< Grid.ColumnDefinitions >
< ColumnDefinition />
< ColumnDefinition />
< ColumnDefinition />
< ColumnDefinition />
< ColumnDefinition />
< ColumnDefinition />
< ColumnDefinition />
</ Grid.ColumnDefinitions >
< DateControls:MonthCalendarDayHeader Grid.Column ="0" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=0,RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="1" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=1, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="2" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=2, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="3" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=3, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="4" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=4, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="5" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=5, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
< DateControls:MonthCalendarDayHeader Grid.Column ="6" Style =" {TemplateBinding DayHeaderStyle} "
DataContext =" {Binding Path=FirstDayOfWeek,Mode=OneWay,Converter={StaticResource MonthCalendarDayHeaderConverter},ConverterParameter=6, RelativeSource={RelativeSource AncestorType={x:Type DateControls:MonthCalendar}}} " />
</ Grid >
<!-- DayHeaders -->
FirstDayOfWeek属性类型为DayOfWeek 枚举,通过数据绑定的ConverterParameter属性传递参数,然后通过类型转换器转换数据
然后再画一条分隔线
<
Rectangle
x:Name
="DayHeadersSplitLine"
Grid.Column
="1"
Fill
="Black"
Height
="1"
VerticalAlignment
="Bottom"
Margin
="2,0,2,0"
/>
到目前为止,默认的显示效果如下