用途
Syncfusion Windows Forms SfDateTimeEdit 是一个用于编辑 DateTime 值的高级日期时间选择器控件,允许用户以文本或掩码格式编辑日期和时间,并支持最小/最大值校验、水印、自定义模式和全球化。
主要能力
- 编辑模式:默认(文本)和掩码(按字段导航的格式化输入)
- 日期范围校验:MinDateTime 和 MaxDateTime 属性
- 显示模式:LongDate、ShortDate、LongTime、ShortTime、FullDateTime、MonthDay、YearMonth、Custom
- 可空日期:AllowNull 配合水印文本
- 校验:内置校验与错误消息
- 全球化:基于区域性的格式和模式
- 导航:Tab、方向键、上下按钮进行字段导航
- 外观:主题、字体、颜色、边框、日历下拉
使用方式
通过 NuGet 或设计器安装 SfDateTimeEdit,将其添加到 Windows Forms 项目。可编程创建实例并设置 Value 属性。
基本示例:
using Syncfusion.WinForms.Input;
SfDateTimeEdit dateTimeEdit = new SfDateTimeEdit();
dateTimeEdit.Location = new Point(20, 20);
dateTimeEdit.Size = new Size(200, 30);
dateTimeEdit.Value = DateTime.Now;
this.Controls.Add(dateTimeEdit);
VB.NET:
Imports Syncfusion.WinForms.Input
Dim dateTimeEdit As New SfDateTimeEdit()
dateTimeEdit.Location = New Point(20, 20)
dateTimeEdit.Size = New Size(200, 30)
dateTimeEdit.Value = DateTime.Now
Me.Controls.Add(dateTimeEdit)
常见模式包括:带范围限制的日期选择器、仅时间选择器、自定义格式日期编辑器、带水印的可空日期、掩码模式配合上下按钮、日期范围筛选、带校验的日期输入。
关键属性:Value、MinDateTime、MaxDateTime、DateTimePattern、Format、DateTimeEditingMode、AllowNull、Watermark、ShowUpDown、DateTimeText、ValidationErrorMessage、Style、ReadOnly、ToolTipText。
关键事件:ValueChanged、ValidationCompleted、DateTimeTextChanged。
适用场景
- 预约排程:选择预约日期和时间,带营业时间约束
- 日期范围筛选:实现报告的“起始日期”到“结束日期”筛选
- 出生日期录入:捕获出生日期,限制过去日期并使用自定义格式
- 时间录入:仅时间输入,用于排班或时间跟踪
- 可选日期字段:表单中可空日期字段,为空时显示水印
- 国际日期输入:区域特定日期格式,支持阿拉伯语、希伯来语等的 RTL
限制
资料未提供具体的平台兼容性、版本要求、授权或收费信息。与 DateTimePickerAdv 的对比:需要现代 UI 主题、掩码模式字段导航、水印支持、更好的校验功能、区域特定模式时使用 SfDateTimeEdit;需要自定义上下/下拉按钮外观、旧版应用兼容性、SfDateTimeEdit 中没有的特定高级自定义时使用 DateTimePickerAdv。