根据一天中的时间自动填充 "Shift" 字段

Populating "Shift" field automatically based on time of day

我正在创建一个 WinForms 应用程序,它将用于跟踪操作员执行检查的时间和结果,然后将其提交到数据库。我有一个按钮 linked 到 DateTimePickers,用于更新当前日期和时间。我的问题是,是否可以 link 这个按钮也可以根据一天中的时间自动填充我为其设置了 ComboBox 的“shift”字段? (例如 1st = 0700 - 1500、2nd = 1500 - 2300、3rd = 2300 - 0700)我考虑过使用计时器对象,但在寻找如何 link 这些时间范围到事件时遇到问题。有没有人举例说明我将如何做到这一点?

这就是我最终的做法:

TimeSpan First_Start = new TimeSpan(7, 0, 0);
TimeSpan First_End = new TimeSpan(14, 59, 59);
TimeSpan Second_Start = new TimeSpan(15, 0, 0);
TimeSpan Second_End = new TimeSpan(22, 59, 59);
TimeSpan Third_Start = new TimeSpan(23, 0, 0);
TimeSpan Third_End = new TimeSpan(06, 59, 59);
TimeSpan Now = DateTime.Now.TimeOfDay;

private void button1_Click(object sender, EventArgs e) 
{
    this.dateTimePicker1.Value = DateTime.Now;
    this.dateTimePicker2.Value = DateTime.Now;
    if (Now >= (First_Start) && Now <= (First_End))
    {
        comboBox1.Text = "1st";
    }
    if (Now >= (Second_Start) && Now <= (Second_End))
    {
        comboBox1.Text = "2nd";
    }
    if (Now >= (Third_Start) && Now <= (Third_End))
    {
        comboBox1.Text = "3rd";
    }
}