WPF DatePicker默认显示当前日期,格式化为年月日(转)
WPF DatePicker默认显示当前日期,格式化为年月日
WPF的日历选择控件默认为当前日期,共有两种方法,一种静态,一种动态。
静态的当然写在DatePicker控件的属性里了,动态的写在对应的cs文件里,具体请看下面。
1.方法一:
myDatePicker.Text = DateTime.Today.ToLongDateString();
2.方法二:
先在窗体头部引入命名空间:
xmlns:sys="clr-namespace:System;assembly=mscorlib"
然后:
<DatePicker SelectedDate="{x:Static sys:DateTime.Now}" />
不过呢,建议用第二种方法,把UI和逻辑分开,不要再把它们放一起了!
然而,在MVVM中,这没啥卵用了,直接binding
年月日格式化
<DatePicker
Grid.Row="1"
HorizontalAlignment="Center"
VerticalAlignment="Center"
BorderThickness="0"
SelectedDate="{x:Static sys:DateTime.Now}"
>
<DatePicker.Resources>
<Style TargetType="DatePickerTextBox">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<TextBox x:Name="PART_TextBox" Text="{Binding Path=SelectedDate, StringFormat={}{0:yyyy年MM月dd日}, RelativeSource={RelativeSource AncestorType={x:Type DatePicker}}}" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</DatePicker.Resources>
</DatePicker

浙公网安备 33010602011771号