如何手动设置wpfx:DateTimePicker日期时间?窗口打开时设为当前时间
解决WPF DateTimePicker初始化设置当前时间的问题
嘿,我来帮你搞定这个DateTimePicker的初始化问题!你之前的代码无效是因为SetValue的用法不对:这个方法必须指定对应的依赖属性才能生效,而且你传入的是字符串类型,可DateTimePicker需要的是DateTime类型的值,自然不会起作用啦。
给你两种简单有效的实现方式:
方法1:构造函数里直接赋值(最直接)
在InitializeComponent();之后,直接给DateTimePicker的SelectedDate(或者Value,不同第三方控件命名可能有差异)属性赋值就行:
public frm_main() { InitializeComponent(); // 设置为当前完整的日期时间 dat_reg.SelectedDate = DateTime.Now; // 如果只需要日期部分,换成这个 // dat_reg.SelectedDate = DateTime.Today; }
如果你的wpfx DateTimePicker没有SelectedDate属性,那就试试Value属性:
dat_reg.Value = DateTime.Now;
方法2:XAML绑定(更贴合WPF的MVVM思路)
要是你后续需要在ViewModel里管理这个日期值,也可以直接在XAML里绑定并设置默认值:
<wpfx:DateTimePicker x:Name="dat_reg" Height="23" Margin="223,270,184,-237" Grid.ColumnSpan="3" SelectedDate="{Binding CurrentDateTime, Mode=TwoWay}"/>
然后在你的窗口类或者ViewModel里定义属性(如果需要动态更新,记得实现INotifyPropertyChanged接口):
public DateTime CurrentDateTime { get; set; } = DateTime.Now;
最后别忘了把窗口的DataContext设置好,比如在构造函数里加一句:
DataContext = this;
这样就能实现初始化时自动显示当前时间啦~
内容的提问来源于stack exchange,提问作者D.P.
相关产品推荐
相关产品推荐

