问题描述
我正在使用 WPF
是否可以编辑 DatePicker 的整个模板? 我想更改一些颜色,但找不到此属性的位置
我已经尝试使用下一个代码,但它只更改了日期显示的容器,而且我还想更改文本框、悬停日等的颜色。
<DatePicker>
<DatePicker.CalendarStyle>
<Style targettype="Calendar" BasedOn="{StaticResource MaterialDesignCalendarPortrait}">
<Style.Resources>
<SolidColorBrush x:Key="PrimaryHueMidBrush" Color="#373A6B" />
</Style.Resources>
</Style>
</DatePicker.CalendarStyle>
</DatePicker>
先谢谢你:)
解决方法
是否可以编辑 DatePicker 的整个模板?
当然。您可以将 original one 复制到您的 XAML 标记中并根据您的要求进行编辑。
查看模板的定义方式,您会发现它们引用了您可以覆盖的资源。例如,鼠标悬停画笔由 PrimaryHueDarkBrush
:
<DatePicker>
<DatePicker.CalendarStyle>
<Style TargetType="Calendar" BasedOn="{StaticResource MaterialDesignCalendarPortrait}">
<Style.Resources>
<SolidColorBrush x:Key="PrimaryHueMidBrush" Color="Red" />
<SolidColorBrush x:Key="PrimaryHueDarkBrush" Color="Green" />
</Style.Resources>
</Style>
</DatePicker.CalendarStyle>
</DatePicker>