wpf 如何创建时间控件(时分秒)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了wpf 如何创建时间控件(时分秒)相关的知识,希望对你有一定的参考价值。

wpf提供了两个关于日期的控件:calendar和datapicker,但没有提供可选择的时间(时分秒)控件,哪位大牛有这方面的资料,谢谢

因为目前官方还没有提供相关的时间控件,因此我个人推荐你可以采用以下两种方式来实现。
一、到www.codeplex.com上下载高手写好的开源控件,当然如果你有时间也可以自己实现。
二、通过WPF自带的WindowsFormsHost 控件来调用WINFORM下的时间控件来实现。具体代码示例如下:
<my:WindowsFormsHost Height="20" HorizontalAlignment="Left" Name="windowsFormsHost1" Width="180" xmlns:my="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration">
<Forms:DateTimePicker Width="160" Height="20" Format="Custom" CustomFormat="yyyy年MM月dd日 HH:mm" x:Name="dateTimerFrom" />
</my:WindowsFormsHost>
参考技术A 使用嵌套WinForm控件可以实现,参考代码如下:

引用WindowsFormsIntegration
页首:
xmlns:wfi ="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"
xmlns:wf ="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"

<wfi:WindowsFormsHost Width="90" >
<wf:DateTimePicker x:Name="tpStartDate" Format="Custom" ShowUpDown="True" />
</wfi:WindowsFormsHost>
<wfi:WindowsFormsHost Width="80">
<wf:DateTimePicker x:Name="tpStartTime" Format="Time" ShowUpDown="True" />
</wfi:WindowsFormsHost>
参考技术B 搜索WPF Toolkit Extended本回答被提问者采纳

如何在DateTimePicker中显示时分秒

参考技术A 实现日期选取器: 想在每次加载软件的时间都能将选取器加载到当前的日期和时间,需要在viewDidLoad中创建一个新的NSDate对象,通过这种方式创建这个对象包含当前的时间和时间。然后将datePicker设置为该日期,这样就可以确保每次从nib中加载此视图时,选取器都会重置为当前得日期和时间..-(void)viewDidLoad NSDate *now = [[NSDate alloc]init]; [datePicker setDate:now animated:NO]; [now release]; 然后在你需要获取日期的方法中: NSDate *selected = [datePicker date]; 你可以获取到当前0时区的时间,如果需要设置日期的格式需要添加如下的格式订制: NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 这是规定了西八时区的时间格式。

以上是关于wpf 如何创建时间控件(时分秒)的主要内容,如果未能解决你的问题,请参考以下文章

WinForm时间选择控件(DateTimePicker)如何选择(显示)时分秒

C# DateTimePicker控件如何精确设置显示时分秒

C# DateTimePicker控件如何精确设置显示时分秒

设置DevExpress GridControl控件时间列显示时分秒样式

在jsp页面中得到的时间:年月日时分秒,但在时间控件wdatepicker中不能显示出时分秒,只显示出年月日。求

时分秒(HHHH:mm:ss)控件的2种实现方式