使 Datetimepicker 显示不变的值,直到在下拉日历 C# 中选择一个日期
Make Datetimepicker display unchanged value till picking a date in the dropdown calendar C#
当使用默认的 winform DateTimePicker 时,如果单击下拉菜单,则可以通过鼠标或箭头键滚动(或翻页)日历,显示的 date/time 值会相应更改。有没有办法保持显示的值不受影响,即,如果后端值为空或后端数据库中的固定值,则看似为空(作为 space),直到您真正从日历中选择一个值来覆盖它?
有时客户希望在从日历中选择新值时不断地从后端查看 DateTimePicker 值作为参考。我正在考虑将文本框与日期时间选择器组合在一起以实现此行为,但尚未得出可靠的结论。
我一直在研究这个问题,我相信您想使用“自定义格式”选项。您可能需要稍微尝试一下,但基本上,我添加了一个名为 "ChosenDate" 的 属性(字符串)...然后我将其分配给 "CustomFormat" 属性 datetimepicker1,然后在特写镜头上重置它。试一试这个,看看你是否能让它做你想做的事...
属性
private string _dttime;
public string ChosenDate
{
get { return _dttime; }
set { _dttime = value; }
}
在初始化函数中...
ChosenDate = dateTimePicker1.Value.ToShortDateString();
dateTimePicker1.Format = DateTimePickerFormat.Custom;
dateTimePicker1.CustomFormat = ChosenDate;
dateTimePicker1.CloseUp += dateTimePicker1_CloseUp;
处理函数
void dateTimePicker1_CloseUp(object sender, EventArgs e)
{
ChosenDate = (sender as DateTimePicker).Value.ToShortDateString();
dateTimePicker1.CustomFormat = ChosenDate;
}
当使用默认的 winform DateTimePicker 时,如果单击下拉菜单,则可以通过鼠标或箭头键滚动(或翻页)日历,显示的 date/time 值会相应更改。有没有办法保持显示的值不受影响,即,如果后端值为空或后端数据库中的固定值,则看似为空(作为 space),直到您真正从日历中选择一个值来覆盖它?
有时客户希望在从日历中选择新值时不断地从后端查看 DateTimePicker 值作为参考。我正在考虑将文本框与日期时间选择器组合在一起以实现此行为,但尚未得出可靠的结论。
我一直在研究这个问题,我相信您想使用“自定义格式”选项。您可能需要稍微尝试一下,但基本上,我添加了一个名为 "ChosenDate" 的 属性(字符串)...然后我将其分配给 "CustomFormat" 属性 datetimepicker1,然后在特写镜头上重置它。试一试这个,看看你是否能让它做你想做的事...
属性
private string _dttime;
public string ChosenDate
{
get { return _dttime; }
set { _dttime = value; }
}
在初始化函数中...
ChosenDate = dateTimePicker1.Value.ToShortDateString();
dateTimePicker1.Format = DateTimePickerFormat.Custom;
dateTimePicker1.CustomFormat = ChosenDate;
dateTimePicker1.CloseUp += dateTimePicker1_CloseUp;
处理函数
void dateTimePicker1_CloseUp(object sender, EventArgs e)
{
ChosenDate = (sender as DateTimePicker).Value.ToShortDateString();
dateTimePicker1.CustomFormat = ChosenDate;
}