* 日期、时间选择框增加CanEmpty,输入可为空

This commit is contained in:
Sunny 2020-12-19 23:43:03 +08:00
parent 94a441c9f7
commit f007912101
7 changed files with 31 additions and 0 deletions

Binary file not shown.

Binary file not shown.

View File

@ -127,6 +127,7 @@
// //
// uiDatetimePicker1 // uiDatetimePicker1
// //
this.uiDatetimePicker1.CanEmpty = true;
this.uiDatetimePicker1.FillColor = System.Drawing.Color.White; this.uiDatetimePicker1.FillColor = System.Drawing.Color.White;
this.uiDatetimePicker1.Font = new System.Drawing.Font("微软雅黑", 12F); this.uiDatetimePicker1.Font = new System.Drawing.Font("微软雅黑", 12F);
this.uiDatetimePicker1.Location = new System.Drawing.Point(388, 136); this.uiDatetimePicker1.Location = new System.Drawing.Point(388, 136);
@ -184,6 +185,7 @@
// //
// uiTimePicker1 // uiTimePicker1
// //
this.uiTimePicker1.CanEmpty = true;
this.uiTimePicker1.FillColor = System.Drawing.Color.White; this.uiTimePicker1.FillColor = System.Drawing.Color.White;
this.uiTimePicker1.Font = new System.Drawing.Font("微软雅黑", 12F); this.uiTimePicker1.Font = new System.Drawing.Font("微软雅黑", 12F);
this.uiTimePicker1.Location = new System.Drawing.Point(188, 136); this.uiTimePicker1.Location = new System.Drawing.Point(188, 136);
@ -225,6 +227,7 @@
// //
// uiDatePicker1 // uiDatePicker1
// //
this.uiDatePicker1.CanEmpty = true;
this.uiDatePicker1.FillColor = System.Drawing.Color.White; this.uiDatePicker1.FillColor = System.Drawing.Color.White;
this.uiDatePicker1.Font = new System.Drawing.Font("微软雅黑", 12F); this.uiDatePicker1.Font = new System.Drawing.Font("微软雅黑", 12F);
this.uiDatePicker1.Location = new System.Drawing.Point(30, 136); this.uiDatePicker1.Location = new System.Drawing.Point(30, 136);

View File

@ -83,6 +83,7 @@ namespace Sunny.UI
protected override void ItemForm_ValueChanged(object sender, object value) protected override void ItemForm_ValueChanged(object sender, object value)
{ {
SelectedIndex = ListBox.SelectedIndex; SelectedIndex = ListBox.SelectedIndex;
Box_SelectedIndexChanged(null, null);
Invalidate(); Invalidate();
} }

View File

@ -41,6 +41,10 @@ namespace Sunny.UI
TextChanged += UIDatePicker_TextChanged; TextChanged += UIDatePicker_TextChanged;
} }
[DefaultValue(false)]
[Description("日期输入时,是否可空显示"), Category("SunnyUI")]
public bool CanEmpty { get; set; }
private void UIDatePicker_TextChanged(object sender, EventArgs e) private void UIDatePicker_TextChanged(object sender, EventArgs e)
{ {
if (Text.Length == MaxLength) if (Text.Length == MaxLength)
@ -59,6 +63,11 @@ namespace Sunny.UI
private void UIDatePicker_LostFocus(object sender, EventArgs e) private void UIDatePicker_LostFocus(object sender, EventArgs e)
{ {
if (Text.IsNullOrEmpty())
{
if (CanEmpty) return;
}
try try
{ {
DateTime dt = Text.ToDateTime(DateFormat); DateTime dt = Text.ToDateTime(DateFormat);

View File

@ -48,6 +48,10 @@ namespace Sunny.UI
} }
[DefaultValue(false)]
[Description("日期输入时,是否可空显示"), Category("SunnyUI")]
public bool CanEmpty { get; set; }
public UIDatetimePicker() public UIDatetimePicker()
{ {
InitializeComponent(); InitializeComponent();
@ -77,6 +81,11 @@ namespace Sunny.UI
private void UIDatePicker_LostFocus(object sender, EventArgs e) private void UIDatePicker_LostFocus(object sender, EventArgs e)
{ {
if (Text.IsNullOrEmpty())
{
if (CanEmpty) return;
}
try try
{ {
DateTime dt = Text.ToDateTime(DateFormat); DateTime dt = Text.ToDateTime(DateFormat);

View File

@ -56,6 +56,10 @@ namespace Sunny.UI
MaxLength = 8; MaxLength = 8;
} }
[DefaultValue(false)]
[Description("日期输入时,是否可空显示"), Category("SunnyUI")]
public bool CanEmpty { get; set; }
private void UIDatePicker_TextChanged(object sender, EventArgs e) private void UIDatePicker_TextChanged(object sender, EventArgs e)
{ {
if (Text.Length == MaxLength) if (Text.Length == MaxLength)
@ -74,6 +78,11 @@ namespace Sunny.UI
private void UIDatePicker_LostFocus(object sender, EventArgs e) private void UIDatePicker_LostFocus(object sender, EventArgs e)
{ {
if (Text.IsNullOrEmpty())
{
if (CanEmpty) return;
}
try try
{ {
DateTime dt = (DateTime.Now.DateString() + " " + Text).ToDateTime(DateTimeEx.DateFormat + " " + timeFormat); DateTime dt = (DateTime.Now.DateString() + " " + Text).ToDateTime(DateTimeEx.DateFormat + " " + timeFormat);