此群已满340500857 ,请加新群458041663

由于微信群人数太多入群请添加小编微信号

 yanjinhuawechatW_Feng_aiQ 邀请入群

需备注WPF开发者

PS:有更好的方式欢迎推荐。

支持Nuget

Install-Package WPFDevelopers.Minimal -Version 3.2.0

01

代码如下

一、创建 Styles.DatePicker.xaml  代码如下。

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:sys="clr-namespace:System;assembly=mscorlib"xmlns:wpfs="clr-namespace:WPFDevelopers.Minimal.Helpers"><ResourceDictionary.MergedDictionaries><ResourceDictionary Source="../Themes/Basic/ControlBasic.xaml"/><ResourceDictionary Source="../Themes/Basic/Animations.xaml"/></ResourceDictionary.MergedDictionaries><Style TargetType="{x:Type CalendarDayButton}" x:Key="CalendarDayButtonStyle" BasedOn="{StaticResource ControlBasicStyle}"><Setter Property="Width"  Value="32" /><Setter Property="Height" Value="32" /><Setter Property="FontSize"  Value="12" /><Setter Property="HorizontalContentAlignment" Value="Center" /><Setter Property="VerticalContentAlignment" Value="Center" /><Setter Property="Cursor" Value="Hand"/><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="CalendarDayButton"><Grid><VisualStateManager.VisualStateGroups><VisualStateGroup Name="CommonStates"><VisualStateGroup.Transitions><VisualTransition GeneratedDuration="0:0:0.1" /></VisualStateGroup.Transitions><VisualState Name="Normal" /><VisualState Name="MouseOver"/><VisualState Name="Pressed"/><VisualState Name="Disabled"/></VisualStateGroup><VisualStateGroup Name="SelectionStates"><VisualStateGroup.Transitions><VisualTransition GeneratedDuration="0" /></VisualStateGroup.Transitions><VisualState Name="Unselected" /><VisualState Name="Selected"/></VisualStateGroup><VisualStateGroup Name="CalendarButtonFocusStates"><VisualStateGroup.Transitions><VisualTransition GeneratedDuration="0" /></VisualStateGroup.Transitions><VisualState Name="CalendarButtonFocused"/><VisualState Name="CalendarButtonUnfocused"/></VisualStateGroup><VisualStateGroup Name="ActiveStates"><VisualStateGroup.Transitions><VisualTransition GeneratedDuration="0" /></VisualStateGroup.Transitions><VisualState Name="Active" /><VisualState Name="Inactive"/></VisualStateGroup><VisualStateGroup Name="DayStates"><VisualStateGroup.Transitions><VisualTransition GeneratedDuration="0" /></VisualStateGroup.Transitions><VisualState Name="RegularDay" /><VisualState Name="Today"/></VisualStateGroup><VisualStateGroup Name="BlackoutDayStates"><VisualStateGroup.Transitions><VisualTransition GeneratedDuration="0" /></VisualStateGroup.Transitions><VisualState Name="NormalDay" /><VisualState Name="BlackoutDay"/></VisualStateGroup></VisualStateManager.VisualStateGroups><Ellipse x:Name="SelectedBackground" Opacity="0"><Ellipse.Fill><SolidColorBrush Color="{DynamicResource PrimaryMouseOverColor}" /></Ellipse.Fill></Ellipse><Border Background="{TemplateBinding Background}"BorderThickness="{TemplateBinding BorderThickness}"BorderBrush="{TemplateBinding BorderBrush}" /><Ellipse x:Name="DayButtonFocusVisual" Visibility="Collapsed"IsHitTestVisible="False"><Ellipse.Fill><SolidColorBrush Color="{DynamicResource PrimaryNormalColor}" /></Ellipse.Fill></Ellipse><ContentPresenter x:Name="NormalText"HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"VerticalAlignment="{TemplateBinding VerticalContentAlignment}"><TextElement.Foreground><SolidColorBrush Color="{DynamicResource RegularTextColor}" /></TextElement.Foreground></ContentPresenter><Path x:Name="Blackout" Opacity="0"  Margin="3" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"Fill="#FF000000" Stretch="Fill"Data="{StaticResource PathBlackout}" /></Grid><ControlTemplate.Triggers><MultiTrigger><MultiTrigger.Conditions><Condition Property="IsSelected" Value="False"/><Condition Property="IsMouseOver" Value="True"/></MultiTrigger.Conditions><Setter TargetName="NormalText" Property="TextElement.Foreground" Value="{DynamicResource PrimaryMouseOverSolidColorBrush}"/></MultiTrigger><Trigger Property="IsToday" Value="True"><Setter TargetName="NormalText" Property="TextElement.FontWeight" Value="Bold"/><Setter TargetName="NormalText" Property="TextElement.Foreground" Value="{DynamicResource PrimaryNormalSolidColorBrush}"/></Trigger><Trigger Property="IsSelected" Value="True"><Setter TargetName="NormalText" Property="TextElement.Foreground" Value="{DynamicResource WhiteSolidColorBrush}"/><Setter TargetName="SelectedBackground" Property="Opacity" Value="1"/></Trigger><Trigger Property="IsInactive" Value="True"><Setter TargetName="NormalText" Property="TextElement.Foreground" Value="{DynamicResource BaseSolidColorBrush}"/></Trigger><Trigger Property="IsBlackedOut" Value="True"><Setter TargetName="Blackout" Property="Opacity" Value=".2"/></Trigger></ControlTemplate.Triggers></ControlTemplate></Setter.Value></Setter></Style><Style TargetType="{x:Type CalendarButton}" x:Key="CalendarButtonStyle" BasedOn="{StaticResource ControlBasicStyle}"><Setter Property="MinWidth" Value="48" /><Setter Property="MinHeight"  Value="32" /><Setter Property="FontSize" Value="12" /><Setter Property="HorizontalContentAlignment" Value="Center" /><Setter Property="VerticalContentAlignment" Value="Center" /><Setter Property="Cursor" Value="Hand"/><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="CalendarButton"><Grid><VisualStateManager.VisualStateGroups><VisualStateGroup Name="CommonStates"><VisualStateGroup.Transitions><VisualTransition GeneratedDuration="0:0:0.1" /></VisualStateGroup.Transitions><VisualState Name="Normal" /><VisualState Name="MouseOver"><Storyboard><ColorAnimationUsingKeyFrames Storyboard.TargetName="NormalText" Storyboard.TargetProperty="(TextElement.Foreground).(SolidColorBrush.Color)"><EasingColorKeyFrame KeyTime="0" Value="{DynamicResource PrimaryMouseOverColor}" ></EasingColorKeyFrame></ColorAnimationUsingKeyFrames></Storyboard></VisualState><VisualState Name="Pressed"/></VisualStateGroup><VisualStateGroup Name="SelectionStates"><VisualStateGroup.Transitions><VisualTransition GeneratedDuration="0" /></VisualStateGroup.Transitions><VisualState Name="Unselected" /><VisualState Name="Selected"><Storyboard><ColorAnimationUsingKeyFrames Storyboard.TargetName="NormalText" Storyboard.TargetProperty="(TextElement.Foreground).(SolidColorBrush.Color)"><EasingColorKeyFrame KeyTime="0" Value="{DynamicResource PrimaryNormalColor}" ></EasingColorKeyFrame></ColorAnimationUsingKeyFrames></Storyboard></VisualState></VisualStateGroup><VisualStateGroup Name="ActiveStates"><VisualStateGroup.Transitions><VisualTransition GeneratedDuration="0" /></VisualStateGroup.Transitions><VisualState Name="Active" /><VisualState Name="Inactive"/></VisualStateGroup><VisualStateGroup Name="CalendarButtonFocusStates"><VisualStateGroup.Transitions><VisualTransition GeneratedDuration="0" /></VisualStateGroup.Transitions><VisualState Name="CalendarButtonFocused"><Storyboard><ColorAnimationUsingKeyFrames Storyboard.TargetName="NormalText" Storyboard.TargetProperty="(TextElement.Foreground).(SolidColorBrush.Color)"><EasingColorKeyFrame KeyTime="0" Value="{DynamicResource PrimaryNormalColor}" ></EasingColorKeyFrame></ColorAnimationUsingKeyFrames></Storyboard></VisualState><VisualState Name="CalendarButtonUnfocused" /></VisualStateGroup></VisualStateManager.VisualStateGroups><ContentPresenter x:Name="NormalText"HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"VerticalAlignment="{TemplateBinding VerticalContentAlignment}"Margin="3,20"><TextElement.Foreground><SolidColorBrush Color="{DynamicResource RegularTextColor}" /></TextElement.Foreground></ContentPresenter></Grid><ControlTemplate.Triggers><Trigger Property="IsInactive" Value="True"><Setter TargetName="NormalText" Property="TextElement.Foreground" Value="{DynamicResource BaseSolidColorBrush}"/></Trigger></ControlTemplate.Triggers></ControlTemplate></Setter.Value></Setter></Style><ControlTemplate x:Key="PreviousButtonTemplate" TargetType="{x:Type Button}"><Grid Cursor="Hand"><VisualStateManager.VisualStateGroups><VisualStateGroup x:Name="CommonStates"><VisualState x:Name="Normal" /><VisualState x:Name="MouseOver"><Storyboard><ColorAnimation Duration="0"Storyboard.TargetName="PART_Path"Storyboard.TargetProperty="(Shape.Fill).(SolidColorBrush.Color)"To="{DynamicResource PrimaryMouseOverColor}" /></Storyboard></VisualState><VisualState x:Name="Disabled"><Storyboard><DoubleAnimation Duration="0"To=".5"Storyboard.TargetProperty="(Shape.Fill).(Brush.Opacity)"Storyboard.TargetName="PART_Path" /></Storyboard></VisualState></VisualStateGroup></VisualStateManager.VisualStateGroups><Grid  Background="Transparent"><Path x:Name="PART_Path"Margin="14,-6,0,0"Stretch="Fill"HorizontalAlignment="Left"Height="10"VerticalAlignment="Center"Width="6"Data="{StaticResource PathPrevious}"><Path.Fill><SolidColorBrush Color="{DynamicResource RegularTextColor}" /></Path.Fill></Path></Grid></Grid></ControlTemplate><ControlTemplate x:Key="NextButtonTemplate" TargetType="{x:Type Button}"><Grid Cursor="Hand"><VisualStateManager.VisualStateGroups><VisualStateGroup x:Name="CommonStates"><VisualState x:Name="Normal" /><VisualState x:Name="MouseOver"><Storyboard><ColorAnimation Duration="0"To="{StaticResource PrimaryMouseOverColor}"Storyboard.TargetProperty="(Shape.Fill).(SolidColorBrush.Color)"Storyboard.TargetName="PART_Path" /></Storyboard></VisualState><VisualState x:Name="Disabled"><Storyboard><DoubleAnimation Duration="0"To=".5"Storyboard.TargetProperty="(Shape.Fill).(Brush.Opacity)"Storyboard.TargetName="PART_Path" /></Storyboard></VisualState></VisualStateGroup></VisualStateManager.VisualStateGroups><Grid Background="Transparent"><Path x:Name="PART_Path" Data="{StaticResource PathNext}" HorizontalAlignment="Right" Height="10" Margin="0,-6,14,0"Stretch="Fill" VerticalAlignment="Center" Width="6"><Path.Fill><SolidColorBrush Color="{DynamicResource RegularTextColor}" /></Path.Fill></Path></Grid></Grid></ControlTemplate><ControlTemplate x:Key="HeaderButtonTemplate"TargetType="{x:Type Button}"><Grid Cursor="Hand"><VisualStateManager.VisualStateGroups><VisualStateGroup x:Name="CommonStates"><VisualState x:Name="Normal" /><VisualState x:Name="MouseOver"/><VisualState x:Name="Disabled"><Storyboard><DoubleAnimation Duration="0"To=".5"Storyboard.TargetProperty="Opacity"Storyboard.TargetName="PART_ButtonContent" /></Storyboard></VisualState></VisualStateGroup></VisualStateManager.VisualStateGroups><ContentPresenter x:Name="PART_ButtonContent"Margin="1,4,1,9"ContentTemplate="{TemplateBinding ContentTemplate}"Content="{TemplateBinding Content}"TextElement.Foreground="#FF333333"HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"VerticalAlignment="{TemplateBinding VerticalContentAlignment}" /></Grid></ControlTemplate><Style x:Key="CalendarItemStyle" TargetType="{x:Type CalendarItem}" BasedOn="{StaticResource ControlBasicStyle}"><Setter Property="Margin"Value="24,4,24,24" /><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="{x:Type CalendarItem}"><ControlTemplate.Resources><DataTemplate x:Key="{x:Static CalendarItem.DayTitleTemplateResourceKey}"><StackPanel><TextBlock Foreground="{DynamicResource PrimaryTextSolidColorBrush}"FontSize="12"Margin="0,6"Text="{Binding}"HorizontalAlignment="Center"VerticalAlignment="Center" /><Rectangle Fill="{DynamicResource BaseSolidColorBrush}" Height="1"VerticalAlignment="Bottom"/></StackPanel></DataTemplate></ControlTemplate.Resources><Grid x:Name="PART_Root" Margin="{TemplateBinding Margin}"><VisualStateManager.VisualStateGroups><VisualStateGroup x:Name="CommonStates"><VisualState x:Name="Normal" /><VisualState x:Name="Disabled"><Storyboard><DoubleAnimation Duration="0" To="1"Storyboard.TargetProperty="Opacity"Storyboard.TargetName="PART_DisabledVisual" /></Storyboard></VisualState></VisualStateGroup></VisualStateManager.VisualStateGroups><Border Background="{DynamicResource WhiteSolidColorBrush}" BorderBrush="{DynamicResource BaseSolidColorBrush}"BorderThickness="1"CornerRadius="3" SnapsToDevicePixels="True" UseLayoutRounding="True"><Border.Effect><DropShadowEffect BlurRadius="12" Opacity="0.1" ShadowDepth="2" Color="Black" /></Border.Effect><Grid Margin="0,20,0,0"><Grid.ColumnDefinitions><ColumnDefinition Width="Auto" /><ColumnDefinition Width="Auto" /><ColumnDefinition Width="Auto" /></Grid.ColumnDefinitions><Grid.RowDefinitions><RowDefinition Height="Auto"/><RowDefinition Height="*" /></Grid.RowDefinitions><Button x:Name="PART_PreviousButton"Template="{StaticResource PreviousButtonTemplate}"Focusable="False"HorizontalAlignment="Left"Grid.Column="0"Grid.Row="0"Height="20"Width="28" /><Button x:Name="PART_HeaderButton"Focusable="False"FontSize="14"HorizontalAlignment="Center"VerticalAlignment="Center"Grid.Column="1"Grid.Row="0"Template="{StaticResource HeaderButtonTemplate}" /><Button x:Name="PART_NextButton"Focusable="False"HorizontalAlignment="Right"Grid.Column="2"Grid.Row="0"Template="{StaticResource NextButtonTemplate}"Height="20"Width="28" /><Grid x:Name="PART_MonthView"Visibility="Visible"Grid.ColumnSpan="3"Grid.Row="1"Margin="6,10"VerticalAlignment="Center"HorizontalAlignment="Center"><Grid.ColumnDefinitions><ColumnDefinition Width="Auto" /><ColumnDefinition Width="Auto" /><ColumnDefinition Width="Auto" /><ColumnDefinition Width="Auto" /><ColumnDefinition Width="Auto" /><ColumnDefinition Width="Auto" /><ColumnDefinition Width="Auto" /></Grid.ColumnDefinitions><Grid.RowDefinitions><RowDefinition Height="Auto" /><RowDefinition Height="Auto" /><RowDefinition Height="Auto" /><RowDefinition Height="Auto" /><RowDefinition Height="Auto" /><RowDefinition Height="Auto" /><RowDefinition Height="Auto" /></Grid.RowDefinitions></Grid><Grid x:Name="PART_YearView"Visibility="Hidden"Grid.ColumnSpan="3"Grid.Row="1"VerticalAlignment="Center"HorizontalAlignment="Center"Margin="6,-3,7,6"><Grid.ColumnDefinitions><ColumnDefinition Width="Auto" /><ColumnDefinition Width="Auto" /><ColumnDefinition Width="Auto" /><ColumnDefinition Width="Auto" /></Grid.ColumnDefinitions><Grid.RowDefinitions><RowDefinition Height="Auto" /><RowDefinition Height="Auto" /><RowDefinition Height="Auto" /></Grid.RowDefinitions></Grid></Grid></Border></Grid><ControlTemplate.Triggers><DataTrigger Binding="{Binding DisplayMode, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Calendar}}}"Value="Year"><Setter Property="Visibility"TargetName="PART_MonthView"Value="Collapsed" /><Setter Property="Visibility"TargetName="PART_YearView"Value="Visible" /></DataTrigger><DataTrigger Binding="{Binding DisplayMode, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Calendar}}}"Value="Decade"><Setter Property="Visibility"TargetName="PART_MonthView"Value="Collapsed" /><Setter Property="Visibility"TargetName="PART_YearView"Value="Visible" /></DataTrigger></ControlTemplate.Triggers></ControlTemplate></Setter.Value></Setter></Style><Style TargetType="{x:Type Calendar}" BasedOn="{StaticResource ControlBasicStyle}"><Setter Property="CalendarButtonStyle"Value="{StaticResource CalendarButtonStyle}" /><Setter Property="CalendarDayButtonStyle"Value="{StaticResource CalendarDayButtonStyle}" /><Setter Property="CalendarItemStyle"Value="{StaticResource CalendarItemStyle}" /><Setter Property="Foreground"Value="{DynamicResource PrimaryTextSolidColorBrush}" /><Setter Property="Background" Value="{DynamicResource WhiteSolidColorBrush}"/><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="{x:Type Calendar}"><StackPanel x:Name="PART_Root"HorizontalAlignment="Center"><CalendarItem x:Name="PART_CalendarItem"BorderBrush="{TemplateBinding BorderBrush}"BorderThickness="{TemplateBinding BorderThickness}"Background="{TemplateBinding Background}"Style="{TemplateBinding CalendarItemStyle}" /></StackPanel></ControlTemplate></Setter.Value></Setter></Style><Style x:Key="DatePickerCalendarStyle"TargetType="{x:Type Calendar}"BasedOn="{StaticResource {x:Type Calendar}}" /><Style x:Key="DropDownButtonStyle" TargetType="Button" BasedOn="{StaticResource ControlBasicStyle}"><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="{x:Type Button}"><Grid><Grid.ColumnDefinitions><ColumnDefinition Width="30" /><ColumnDefinition /></Grid.ColumnDefinitions><Border x:Name="Border" Grid.ColumnSpan="2" BorderThickness="1" Background="{DynamicResource WhiteSolidColorBrush}" ></Border><Grid FlowDirection="LeftToRight"HorizontalAlignment="Center" Height="18"  VerticalAlignment="Center" Width="19"><Grid.ColumnDefinitions><ColumnDefinition Width="20*" /><ColumnDefinition Width="20*" /><ColumnDefinition Width="20*" /><ColumnDefinition Width="20*" /></Grid.ColumnDefinitions><Grid.RowDefinitions><RowDefinition Height="23*" /><RowDefinition Height="19*" /><RowDefinition Height="19*" /><RowDefinition Height="19*" /></Grid.RowDefinitions><Border x:Name="Highlight"BorderThickness="1"Grid.ColumnSpan="4"CornerRadius="0,0,1,1"Margin="-1"Opacity="1"Grid.Row="0"BorderBrush="{DynamicResource RegularTextSolidColorBrush}"Grid.RowSpan="4"></Border><Border x:Name="Background"BorderBrush="{DynamicResource RegularTextSolidColorBrush}"BorderThickness="1"Grid.ColumnSpan="4"CornerRadius=".5"Margin="0,-1,0,0"Opacity="1"Grid.Row="1"Grid.RowSpan="3"Background="{DynamicResource WhiteSolidColorBrush}"></Border><Border x:Name="BackgroundGradient"BorderBrush="{DynamicResource RegularTextSolidColorBrush}"BorderThickness="1"Grid.ColumnSpan="4"CornerRadius=".5"Margin="0,-1,0,0"Opacity="1"Grid.Row="1"Grid.RowSpan="3"Background="{DynamicResource WhiteSolidColorBrush}"></Border><Rectangle Grid.ColumnSpan="4" Grid.RowSpan="1" StrokeThickness="1"Fill="{DynamicResource RegularTextSolidColorBrush}"Stroke="{DynamicResource RegularTextSolidColorBrush}"></Rectangle><Path Fill="{DynamicResource RegularTextSolidColorBrush}" Grid.Row="1"Grid.Column="0"Grid.RowSpan="3"Grid.ColumnSpan="4"HorizontalAlignment="Center"VerticalAlignment="Center"RenderTransformOrigin="0.5,0.5"Margin="4,3,4,3"Stretch="Fill"Data="{StaticResource PathDatePickerDropDown}" /><Ellipse Grid.ColumnSpan="4"Fill="{DynamicResource WhiteSolidColorBrush}"HorizontalAlignment="Center"Height="3"StrokeThickness="0"VerticalAlignment="Center"Width="3" /><Border x:Name="DisabledVisual"BorderBrush="{DynamicResource WhiteSolidColorBrush}"BorderThickness="1"Grid.ColumnSpan="4"CornerRadius="0,0,.5,.5"Opacity="0"Grid.Row="0"Grid.RowSpan="4" /></Grid></Grid></ControlTemplate></Setter.Value></Setter></Style><Style TargetType="{x:Type DatePickerTextBox}" BasedOn="{StaticResource ControlBasicStyle}"><Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.WindowTextBrushKey}}" /><Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.WindowBrushKey}}" /><Setter Property="ScrollViewer.PanningMode" Value="VerticalFirst"/><!--<Setter Property="SelectionBrush" Value="{DynamicResource PrimaryNormalSolidColorBrush}"/>--><Setter Property="Stylus.IsFlicksEnabled" Value="False"/><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="DatePickerTextBox"><Grid><Border x:Name="Border" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"Padding="{TemplateBinding Padding}"CornerRadius="1" Opacity="1"><Grid x:Name="WatermarkContent"HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"VerticalAlignment="{TemplateBinding VerticalContentAlignment}"><Border x:Name="ContentElement" BorderThickness="1"><Border.BorderBrush><SolidColorBrush Color="{DynamicResource WhiteColor}"/></Border.BorderBrush></Border><ScrollViewer x:Name="PART_ContentHost" Margin="0"HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" /><!--<Border x:Name="FocusVisual" BorderBrush="#FF45D6FA" CornerRadius="1" Opacity="0" IsHitTestVisible="False"/>--></Grid></Border></Grid></ControlTemplate></Setter.Value></Setter></Style><Style TargetType="{x:Type DatePicker}" BasedOn="{StaticResource ControlBasicStyle}"><Setter Property="IsTodayHighlighted"Value="True" /><Setter Property="SelectedDateFormat"Value="Short" /><Setter Property="Padding"Value="2" /><Setter Property="BorderThickness"Value="1" /><Setter Property="HorizontalContentAlignment"Value="Left" /><Setter Property="VerticalContentAlignment"Value="Center" /><Setter Property="MinWidth" Value="140"/><Setter Property="MinHeight" Value="{StaticResource MinHeight}" /><Setter Property="Cursor" Value="Hand"/><Setter Property="CalendarStyle"Value="{DynamicResource DatePickerCalendarStyle}" /><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="{x:Type DatePicker}"><Border BorderThickness="{TemplateBinding BorderThickness}"Padding="{TemplateBinding Padding}" CornerRadius="{Binding Path=(wpfs:ElementHelper.CornerRadius),RelativeSource={RelativeSource TemplatedParent}}"x:Name="PART_Border"BorderBrush="{StaticResource BaseSolidColorBrush}"Background="{StaticResource WhiteSolidColorBrush}"><Grid x:Name="PART_Root"HorizontalAlignment="Stretch"VerticalAlignment="{TemplateBinding VerticalContentAlignment}"><Button x:Name="PART_Button"Foreground="{TemplateBinding Foreground}"Focusable="False"Margin="3,0,3,0"Style="{StaticResource DropDownButtonStyle}"VerticalAlignment="Top" /><DatePickerTextBox x:Name="PART_TextBox"Grid.Column="1"Foreground="{TemplateBinding Foreground}"Focusable="True"Width="Auto" HorizontalAlignment="Left"VerticalAlignment="Bottom"Margin="34,2,2,2"Background="Transparent" /><Popup x:Name="PART_Popup" MinWidth="{TemplateBinding FrameworkElement.ActualWidth}"AllowsTransparency="True" Focusable="False" HorizontalOffset="-50"Placement="Bottom" StaysOpen="False" VerticalOffset="10"></Popup></Grid></Border><ControlTemplate.Triggers><Trigger Property="IsDropDownOpen" Value="True"><Setter Property="BorderBrush" TargetName="PART_Border" Value="{DynamicResource PrimaryNormalSolidColorBrush}"/></Trigger></ControlTemplate.Triggers></ControlTemplate></Setter.Value></Setter></Style></ResourceDictionary>

二、使用 Styles.DatePicker.xaml  代码如下。

<WrapPanel Margin="0,10"><DatePicker Width="200"/><DatePicker Width="200" SelectedDateFormat="Long" Margin="10,0"/><DatePicker Width="200" IsEnabled="False"/></WrapPanel>

02

效果预览

鸣谢素材提供者element

源码地址如下

Github:https://github.com/WPFDevelopersOrg

Gitee:https://gitee.com/WPFDevelopersOrg

https://gitee.com/WPFDevelopersOrg/WPFDevelopers.Minimal

https://github.com/WPFDevelopersOrg/WPFDevelopers.Minimal

WPF开发者QQ群: 340500857 

Github:https://github.com/WPFDevelopersOrg

出处:https://www.cnblogs.com/yanjinhua

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

转载请著名作者 出处 https://github.com/WPFDevelopersOrg

扫一扫关注我们,

更多知识早知道!

点击阅读原文可跳转至源代码

WPF 基础控件之 DatePicker 样式相关推荐

  1. WPF 基础控件之 GroupBox样式

    其他基础控件 1.Window 2.Button 3.CheckBox 4.ComboBox 5.DataGrid 6.DatePicker 7.Expander GroupBox控件修改Style需 ...

  2. WPF 基础控件之 ToggleButton 样式

    其他基础控件 1.Window 2.Button 3.CheckBox 4.ComboBox 5.DataGrid 6.DatePicker 7.Expander 8.GroupBox 9.ListB ...

  3. WPF 基础控件之 TabControl样式

    其他基础控件 1.Window 2.Button 3.CheckBox 4.ComboBox 5.DataGrid 6.DatePicker 7.Expander 8.GroupBox 9.ListB ...

  4. WPF 基础控件之Window样式

    WPF开发者QQ群: 340500857 由于微信群人数太多入群请添加小编微信号  yanjinhuawechat 或 W_Feng_aiQ 邀请入群 需备注WPF开发者 PS:有更好的方式欢迎推荐. ...

  5. WPF 基础控件之 DataGrid 样式

    此群已满340500857 ,请加新群458041663 由于微信群人数太多入群请添加小编微信号  yanjinhuawechat 或 W_Feng_aiQ 邀请入群 需备注WPF开发者 PS:有更好 ...

  6. WPF 基础控件之CheckBox样式

    WPF开发者QQ群:340500857 由于微信群人数太多入群请添加小编微信号  yanjinhuawechat 或 W_Feng_aiQ 邀请入群 需备注WPF开发者 PS:有更好的方式欢迎推荐. ...

  7. WPF DataGrid控件样式

    WPF DataGrid控件样式 <DataGrid ItemsSource="{Binding ProductsList}" AutoGenerateColumns=&qu ...

  8. WPF Expander控件简单样式

    WPF Expander控件简单样式 样式代码: <Style x:Key="ExpanderStyle1" TargetType="{x:Type Expande ...

  9. WPF开源控件扩展库 - MaterialDesignExtensions

    WPF开源控件扩展库 - MaterialDesignExtensions MaterialDesignExtensions仓库截图 logo Material Design Extensions 在 ...

最新文章

  1. 计算机两个硬盘无法重启,双硬盘电脑非系统盘硬盘盘符重启丢失的案例分析
  2. linux shell 文件比较 diff 简介
  3. 【转】SAP采购订单屏幕增强
  4. 计算机视觉与深度学习 | 基于Matlab提取SIFT特征点(源代码)
  5. 手机操作系统如何实现跨平台开发和使用
  6. OpenResty学习地图来啦,速速收藏!
  7. 干货 | 算法和编程面试题精选TOP50!(附代码+解题思路+答案)
  8. DT CMS致力于Spring Boot2.3.5 Vue前后端分离的RBAC权限框架(盛世美颜!)
  9. c#编程指南(四) 组元(Tuple)
  10. JavaWeb中集成UEditor
  11. 点云特征图离散化_点云采样
  12. java 代码解析工具_改善 Java 代码质量的工具与方法
  13. android 多语言(在APP里面内切换语言)
  14. 20190613 一个SQL问题
  15. 微信小程序图标 icon组件
  16. RPA机器人如何通过Usb Server远程连U盾
  17. android3d画廊自动切换,Android viewpager 3D画廊的实现方法
  18. mysql2014汉化版_SQLServer2014企业版下载
  19. BZOJ2794 [Poi2012]Cloakroom [离线][DP]
  20. python创建Excel表格

热门文章

  1. MathType插入带序号公式的两种方法
  2. 提供程序未返回 ProviderManifestToken 字符串
  3. C#判断某软件是否安装
  4. MySQL外键创建失败1005原因总结
  5. android获取手机机型、厂商、deviceID基本信息
  6. LeetCode 322. Coin Change
  7. [异常解决] ubuntu上安采用sudo启动的firefox,ibus输入法失效问题解决
  8. [再寄小读者之数学篇](2014-11-14 矩阵的应用: 多项式)
  9. mysql在linux下修改存储路径
  10. window 2008 和 windows vista windows 7 安装 MSMQ