WPF 控件 (十三、日期选择器)

阅读: 评论:0

WPF 控件 (十三、日期选择器)

WPF 控件 (十三、日期选择器)

一、与calender的区别

二、Template

  <ControlTemplate x:Key="DatePickerTemplate1" TargetType="{x:Type DatePicker}"><Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}"><Grid x:Name="PART_Root" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"><Grid.Resources><ControlTemplate x:Key="DropDownButtonTemplate" TargetType="{x:Type Button}"><Grid FlowDirection="LeftToRight" HorizontalAlignment="Center" Height="18" Margin="0" VerticalAlignment="Center" Width="19" Background="{TemplateBinding Background}"><Path Grid.Column="0" Data="{StaticResource CalendarGeometry}" Fill="Blue" HorizontalAlignment="Center" RenderTransformOrigin="0.5,0.5" Stretch="Uniform" VerticalAlignment="Center" /></Grid></ControlTemplate></Grid.Resources><Grid.ColumnDefinitions><ColumnDefinition Width="*"/><ColumnDefinition Width="Auto"/></Grid.ColumnDefinitions><Button x:Name="PART_Button" Grid.Column="1" Foreground="{TemplateBinding Foreground}" Focusable="False" HorizontalAlignment="Left" Margin="3,0,3,0" Grid.Row="0" Template="{StaticResource DropDownButtonTemplate}" VerticalAlignment="Top" Width="20"/><DatePickerTextBox x:Name="PART_TextBox" Grid.Column="0" Focusable="{TemplateBinding Focusable}" HorizontalContentAlignment="Stretch" Grid.Row="0" VerticalContentAlignment="Stretch" BorderBrush="Blue" BorderThickness="1" Background="CadetBlue"/><Grid x:Name="PART_DisabledVisual" Grid.Column="0" Grid.ColumnSpan="2" IsHitTestVisible="False" Opacity="0" Grid.Row="0"><Grid.ColumnDefinitions><ColumnDefinition Width="*"/><ColumnDefinition Width="Auto"/></Grid.ColumnDefinitions><Rectangle Grid.Column="0" Fill="#A5FFFFFF" Grid.Row="0" RadiusX="1" RadiusY="1"/><Rectangle Grid.Column="1" Fill="#A5FFFFFF" Height="18" Margin="3,0,3,0" Grid.Row="0" RadiusX="1" RadiusY="1" Width="19"/><Popup x:Name="PART_Popup" AllowsTransparency="True" Placement="Bottom" PlacementTarget="{Binding ElementName=PART_TextBox}" StaysOpen="False"/></Grid></Grid></Border><ControlTemplate.Triggers><DataTrigger Binding="{Binding Source={x:Static SystemParameters.HighContrast}}" Value="false"><Setter Property="Foreground" TargetName="PART_TextBox" Value="{Binding Foreground, RelativeSource={RelativeSource TemplatedParent}}"/></DataTrigger></ControlTemplate.Triggers></ControlTemplate>

三、demo

    <WrapPanel><StackPanel Width="200" Margin="10"><TextBlock Text="默认"/><DatePicker/></StackPanel><StackPanel Width="200" Margin="10"><TextBlock Text="长日期"/><DatePicker SelectedDateFormat="Long" SelectedDate="3/23/09" DisplayDateStart="1/01/09" DisplayDateEnd="12/31/09" FirstDayOfWeek="Monday"/></StackPanel><StackPanel Width="200" Margin="10"><TextBlock Text="短日期"/><DatePicker SelectedDateFormat="Short" FirstDayOfWeek="Sunday" Text="2022/06/25"/></StackPanel><StackPanel Width="200" Margin="10"><TextBlock Text="简单修改样式"/><DatePicker Template="{DynamicResource DatePickerTemplate1}" SelectedDateFormat="Long" FirstDayOfWeek="Sunday" Text="2022/06/25" Background="AliceBlue"/></StackPanel></WrapPanel>

四、效果

本文发布于:2024-01-31 14:55:50,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170668415329331.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:控件   日期   选择器   WPF
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23