Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/270: Рейтинг темы: голосов - 270, средняя оценка - 4.71
 Аватар для Wild Wolf
61 / 61 / 11
Регистрация: 30.06.2010
Сообщений: 260

Вывод в DateTimePicker даты и времени

22.12.2010, 13:23. Показов 58019. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер!
Подскажите, пожалуйста, как отобразить в компоненте DateTimePicker даты и времени.
Свойство
C#
1
DateTimePicker.Format
предлагает только отображать либо дату либо время, но никак не вместе.

В MSDN нашла следующее:
Даты, возвращаемые элементами управления MonthCalendar и DateTimePicker, можно форматировать с помощью функции FormatDateTime. Существует несколько констант, которые можно использовать для указания формата даты.

Константа: DateFormat.GeneralDate
Отображает дату, время или оба значения. Если присутствует дата, она отображается в кратком формате. Если присутствует время, оно отображается в полном формате. Если присутствует и время, и дата, отображаются обе части.
22/11/1963 12:00:00 PM
Я не могу понять как использовать эту функцию. Если делать так
C#
1
DateTimePicker.Value.FormatDateTime = DateFormat.GeneralDate
- не получается.


если так
C#
1
DateTimePicker.FormatDateTime = DateFormat.GeneralDate
- тоже не получается.


Можно только
C#
1
DateTimePicker.Format = DateTimePickerFormat. ...
, но предлагаемые значения (DateTimePickerFormat.Custom или Long или Short или Time) не отображают и дату и время.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.12.2010, 13:23
Ответы с готовыми решениями:

Смена даты в datetimepicker при смене времени в другом поле datetimepicker
есть два поля date time picker, одно для изменения времени второе для изменения даты... нужно при попадании часов до 00 ночи, чтобы...

Вывод даты их dateTimePicker
Всем привет, вопрос, я задаю дату в dateTimePicker и хочу чтобы выводилось дд.мм.гг Как это реализовать??? _message =...

Вывод возраста при указании даты в dateTimePicker
Добрый день! У меня есть 2 формочки, одна содержит dataGridView, другая dateTimePicker. Нужно что бы при указании в dateTimePicker...

16
Padawan
 Аватар для Johnny_D
473 / 323 / 30
Регистрация: 30.01.2010
Сообщений: 1,841
22.12.2010, 13:50
Я отдельно использовал отдельно два компонента, один для даты и другой для времени.
0
 Аватар для Wild Wolf
61 / 61 / 11
Регистрация: 30.06.2010
Сообщений: 260
23.12.2010, 07:43  [ТС]
А я нашла решение!
В свойствах DateTimePicker имеестся CustomFormat. Ставишь там шаблон даты/времени (у меня d.MM.yyyy HH:m), а затем dtpic_aim_date.Format = DateTimePickerFormat.Custom;
Вот и все дела! И отображается как надо: 23.10.2010 09:40
10
1 / 1 / 0
Регистрация: 13.05.2015
Сообщений: 29
02.06.2015, 14:37
а пользователю остается только вручную вводить значение времени, дату из формы? Никак нельзя сделать так чтобы как в Windows это сделано
1
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
02.06.2015, 14:41
Цитата Сообщение от sima26ru Посмотреть сообщение
Никак нельзя сделать так чтобы как в Windows это сделано
А как это в Windows сделано?
1
1 / 1 / 0
Регистрация: 13.05.2015
Сообщений: 29
02.06.2015, 14:53
в windows так а в VS так Название: 2.jpg
Просмотров: 3105

Размер: 19.8 Кб
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
02.06.2015, 15:11
Цитата Сообщение от sima26ru Посмотреть сообщение
в windows так
Для календаря используйте контрол MonthCalendar, а часы реализовать самому не сложно.
1
1 / 1 / 0
Регистрация: 13.05.2015
Сообщений: 29
02.06.2015, 15:20
Цитата Сообщение от kolorotur Посмотреть сообщение
Для календаря используйте контрол MonthCalendar, а часы реализовать самому не сложно.
кому как, может подскажите
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
02.06.2015, 15:25
Цитата Сообщение от sima26ru Посмотреть сообщение
может подскажите
Да хотя бы первые же три ссылки в гугле по запросу "c# analog clock control":
http://www.codeproject.com/Art... ck-Control
http://www.codeproject.com/Art... ntrol-in-C
http://www.codeproject.com/Art... alog-Clock
1
1 / 1 / 0
Регистрация: 13.05.2015
Сообщений: 29
02.06.2015, 17:00
ого, куча кода в моем распоряжении )))) Спасибо
0
 Аватар для Midian
606 / 388 / 198
Регистрация: 31.03.2013
Сообщений: 2,690
02.06.2015, 17:41
sima26ru Ничего писать не нужно, все делается ручками:
Ставим свойство Format компонента dateTimePicker в позицию Custom, далее для свойства CustomFormat выставляем "dd.MM.yyyy HH:mm:ss" вот и все
2
2 / 2 / 0
Регистрация: 15.02.2010
Сообщений: 89
23.06.2016, 01:34
Добавлено через 1 минуту
Цитата Сообщение от Midian Посмотреть сообщение
Ставим свойство Format компонента dateTimePicker в позицию Custom, далее для свойства CustomFormat выставляем "dd.MM.yyyy HH:mm:ss" вот и все
У меня проблема наоборот. Как сделать, чтобы dateTimePicker НЕ передавал вместе с датой ещё и время. Он передает в базу данных значение времени и из-за этого не работает выбор по дате. Как прописать, точнее куда, CustomFormat ?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18291 / 14214 / 5368
Регистрация: 17.03.2014
Сообщений: 28,891
Записей в блоге: 1
23.06.2016, 02:13
stazis, если тебе нужна только дата, то и читай только дату используя свойство DateTime.Date
C#
1
DateTime date = dateTimePicker.Value.Date;
2
2 / 2 / 0
Регистрация: 15.02.2010
Сообщений: 89
25.06.2016, 01:53
Цитата Сообщение от OwenGlendower Посмотреть сообщение
если тебе нужна только дата, то и читай только дату используя свойство DateTime.Date
C#
1
DateTime date = dateTimePicker.Value.Date;
Спасибо, очень элегантно.
Кстати, я обнаружил, что можно передать и просто как текст, в базе всё равно значение станет датой, если поле является датойвременем. И тоже будет только дата. Но выбрал твой вариант.
Но у меня опять нарисовалась проблема: я перевел дату в строковый американский формат, а как теперь преобразовать обратно в дату (только уже американскую) не знаю. Это, наверно, тема отдельная, да? Весь день сижу ищу, ничего не помогает. Хоть и частый вопрос, а нужных ответов не нашел.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18291 / 14214 / 5368
Регистрация: 17.03.2014
Сообщений: 28,891
Записей в блоге: 1
25.06.2016, 06:49
stazis, для этого есть методы Parse. Главное использовать одинаковый формат и культуру.
C#
1
2
3
4
DateTime d1 = new DateTime(1969, 6, 20);
CultureInfo ciUS = CultureInfo.GetCultureInfo("en-US");
string s = d1.ToString("D", ciUS);
DateTime d2 = DateTime.ParseExact(s, "D", ciUS);
Цитата Сообщение от stazis Посмотреть сообщение
как теперь преобразовать обратно в дату (только уже американскую)
Даты не делятся на американские, русские, немецкие и т.д. Скорее они классифицируются по виду календаря (например, Григорианский).
1
2 / 2 / 0
Регистрация: 15.02.2010
Сообщений: 89
26.06.2016, 01:12
Я весь запутался.


Если я делаю такой запрос:
C#
1
"select* from Table where (Дата '" + dateTimePicker1.Text + "' < дата and дата <= '" + dateTimePicker2.Text + "')", Подключение);
то выскакивает такая ошибка: Несоответствие типов данных в выражении условия отбора.
если такой:
C#
1
"SELECT * FROM [Table] WHERE (Дата  BETWEEN '"+ dateTimePicker1.Text + "'  AND '" + dateTimePicker2.Text + "' )", Подключение);
то та же ошибка

если такой:
C#
1
"SELECT * FROM [Table] WHERE (Дата LIKE '" + dateTimePicker1.Text + "')", Подключение);
то всё в порядке - работает, но мне нужен диапазон дат.

Пытаюсь пока возиться с конвертацией дат, потому что вот такой запрос работает:
C#
1
"SELECT * FROM [Table] WHERE (Дата  BETWEEN [B]#6/20/2016# AND #6/24/2016#[/B])", Подключение);
но датапикер передает не тот формат.
Боюсь придется перевести поле даты в базе в текстовый формат, тогда второй запрос работает.

Добавлено через 1 час 37 минут
Всё, вот так работает, ура:
C#
1
2
3
4
5
6
7
8
9
10
11
 cmd.CommandText = "SELECT * FROM [Table] WHERE (Дата  BETWEEN @dat1  AND @dat2 )";
            
            OleDbParameter dat1 = cmd.CreateParameter();
            OleDbParameter dat2 = cmd.CreateParameter();
            dat1.OleDbType = OleDbType.Date;
            dat2.OleDbType = OleDbType.Date;
            dat1.Value = dateTimePicker1.Value.Date;
            dat2.Value = dateTimePicker2.Value.Date;
            
            cmd.Parameters.Add(dat1);
            cmd.Parameters.Add(dat2);
0
1 / 1 / 0
Регистрация: 01.12.2014
Сообщений: 142
18.04.2021, 19:32
Цитата Сообщение от Midian Посмотреть сообщение
Ничего писать не нужно, все делается ручками:
Ставим свойство Format компонента dateTimePicker в позицию Custom, далее для свойства CustomFormat выставляем "dd.MM.yyyy HH:mm:ss" вот и все
Бро, ты сэкономил мне пару месяцев жизни
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.04.2021, 19:32
Помогаю со студенческими работами здесь

Вывод времени в DBGrid из компонента DateTimePicker (без даты)
Здравствуйте, подскажите, пожалуйста, есть ли способ в DBGrid вывести время из компонента DateTimePicker без даты, которая стоит по...

Возможно ли отображение в DateTimePicker и даты, и времени
Подскажите начинающему, как возможно ли отображение в DateTimePicker И даты И времени? Как реализовать в VB интерфейс как на скриншоте?...

Изменение даты и времени с использованием datetimepicker
Здравствуйте, проблема вот в чем: какую бы дату и время я не выбрал в datetimepicker в БД она изменяется на &quot;0000-00-00...

Надо дописать!Ассемблер вывод системной даты,времени и даты ближайшего воскресенья
вот исходный код .Model Small .486p .Stack 100h .Data wNumOff DW 10 Dup(0) ;Смещение строки, где будет содержаться...

Вывод системной даты, времени и даты ближайшего воскресенья
вот исходный код выводит дату время .Model Small .486p .Stack 100h .Data wNumOff DW 10 Dup(0) ;Смещение строки, где...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru