【问题标题】:How can I limit the DateTimePicker to only change the date, not the time?如何将 DateTimePicker 限制为仅更改日期,而不是时间?
【发布时间】:2010-08-25 17:30:24
【问题描述】:

情况如下:

我有两个 DateTimePicker 控件用于日志查看器中的开始日期和结束日期。我希望开始日期是用户选择的任何日期,但时间为 00:00:00。结束时间是用户选择的日期,但时间是 23:59:59.999。

(我还将编写代码以确保结束日期等于或大于开始日期,但我可以处理)

实现这一点的最佳方法是什么?

【问题讨论】:

    标签: c# winforms datetimepicker


    【解决方案1】:

    只需使用 DateTime.Date 忽略从 DTP 获得的日期的时间部分。像这样:

        private void btnOK_Click(object sender, EventArgs e) {
            var start = dtpStart.Value.Date;
            var end = dtpEnd.Value.Date.AddDays(1).AddMilliseconds(-1);
            if (end > start) {
                // etc...
            }
        }
    

    【讨论】:

    • 这就是票!感谢您的帮助!
    【解决方案2】:

    使用 DatePicker 而不是 DateTimePicker 和/或订阅更改事件并在每次更改值时强制使用您想要的时间。

    【讨论】:

    • @Hans 原来的问题没有这样标记。
    猜你喜欢
    • 1970-01-01
    • 2021-11-12
    • 1970-01-01
    • 2022-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-03
    相关资源
    最近更新 更多