C # - DateTimePicker в формате времени не фокусируется на значении часа при переходе к следующему окну - PullRequest
2 голосов
/ 08 декабря 2011

Я не нашел ничего похожего на многих веб-сайтах, поэтому я надеюсь, что вы, ребята, можете помочь.

У меня есть таблица данных для системы расписаний, поэтому конкретные ячейки для времени входа / выхода и т. Д. Былиустановите на dateTimePickers (используя переопределенный класс calandar).

Если пользователь вводит 08:00 и вкладки для следующего dtp, фокус по умолчанию устанавливается на час.Однако, если пользователь вводит 08:30 (они вводят час, затем нажимают клавишу со стрелкой вправо, чтобы перейти к минутам), а затем нажимают на вкладку, фокус на следующем dtp остается на минутах.

Есть ли способ установить фокус в коде или что-то по умолчанию на час на каждом dtp?

1 Ответ

1 голос
/ 08 декабря 2011

Расширяя свой комментарий, я никоим образом не вижу DateTimePicker, отображающий текущее выделение, и не позволяет указывать значение SelectionLength для текста, который он содержит. Поэтому я не думаю, что это возможно.

С другой стороны, существует безобразный хак (не рекомендуется) , который, я считаю, не лучше, чем ситуация, в которой вы оказались в конце .

Найдено здесь Вы можете попробовать в любом из событий

void dateTimePicker1_GotFocus(object sender, EventArgs e)
{
     //SendKeys.Send("{LEFT 1}");
}

void dateTimePicker1_Enter(object sender, EventArgs e)
{
     //SendKeys.Send("{LEFT 1}");
}
...