C# - запуск приложения winform в определенное время
Я разрабатываю небольшое приложение winform для автоматической отправки электронной почты клиенту в определенное время каждый день.Клиент установит время из пользовательского интерфейса, поэтому, когда системное время = время, установленное клиентом, мое приложение отправит электронное письмо. Я включил datetimepicker, в котором клиент устанавливал желаемое время запуска. Настроенный формат выбора даты и времени по времени.
private void timer1_Tick(object sender, EventArgs e) { timer1.Enabled = true; timer1.Interval = 1000; toolStripTextBox1.Text = DateTime.Now.ToString("dd-MM-yyyy"); toolStripTextBox2.Text = DateTime.Now.ToString("h:mm:ss tt"); }
private void Form1_Load(object sender, EventArgs e) { dateTimePicker1.Format = DateTimePickerFormat.Time; dateTimePicker1.ShowUpDown = true; dateTimePicker1.CustomFormat = "h:mm:ss tt"; dateTimePicker1.Value = DateTime.Now; }
Меня смущает сейчас, это как если сопоставить элемента управления datetimepicker.значение = toolStripTextBox2. Text? Потому что даже если я вернусь, ошибки не будет, но электронная почта все равно не будет отправлена.
Что я уже пробовал:
если (dateTimePicker1.Значение.Метод toString() == toolStripTextBox2.Текст)
{
textBox3. Text = " проблема решена";
}
Garth J Lancaster
Единственное, что я вижу сразу, - это предположение, что dateTimePicker1.Value.ToString () на самом деле возвращает значение в указанном вами формате - вы проверили, что вы получаете в этой строке ? Мои мысли от чтения docco заключаются в том, что настройка пользовательского формата предназначена только для отображения элемента управления dateTimePicker, а не обязательно для того, что вы получаете от него, когда читаете значение .. ты понимаешь, что я все это говорю ? ,, т. е., то, что я думаю, что вам нужно, это
если (dateTimePicker1.Значение.Метод toString("h: mm:ss tt") == toolStripTextBox2.Текст)
Member 12226114
Тнаков много. Это работает