Respostas:
Defina o formato como personalizado e especifique o formato:
dateTimePicker1.Format = DateTimePickerFormat.Custom;
dateTimePicker1.CustomFormat = "MM/dd/yyyy hh:mm:ss";
ou no entanto, você deseja definir isso. Você pode digitar diretamente a data / hora. Se você usa o MMM, precisará usar o valor numérico do mês para entrada, a menos que você mesmo escreva algum código para isso (por exemplo, 5 resultados em maio)
Não saiba sobre o selecionador para data e hora juntos. Parece um controle personalizado para mim.
System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern
e System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern
obter o formato para a cultura atual. Link MSDN
Dim date As String = CultureInfo...ShortDatePattern Dim time As String = CultureInfo...ShortTimePattern dtpThing.Format = DateTimePickerFormat.Custom dtpThingEnd.CustomFormat = date + " " + time
Você também pode restringir, digamos, o componente de tempo manualmente: Dim date As String = CultureInfo...ShortDatePattern Dim time As String = CultureInfo...ShortTimePattern dtpThing.Format = DateTimePickerFormat.Custom dtpThingEnd.CustomFormat = date + " HH:mm"
É melhor usar dois DateTimePickers para o Job One será o padrão para a seção date e o segundo DateTimePicker será para a parte da hora. Formate o segundo DateTimePicker da seguinte maneira.
timePortionDateTimePicker.Format = DateTimePickerFormat.Time;
timePortionDateTimePicker.ShowUpDown = true;
Os dois devem ficar assim depois de capturá-los
Para obter o DateTime de ambos os controles, use o seguinte código
DateTime myDate = datePortionDateTimePicker.Value.Date +
timePortionDateTimePicker.Value.TimeOfDay;
Para atribuir o DateTime a esses dois controles, use o seguinte código
datePortionDateTimePicker.Value = myDate.Date;
timePortionDateTimePicker.Value = myDate.TimeOfDay;
Infelizmente, esse é um dos muitos nomes inadequados na estrutura ou, na melhor das hipóteses, uma violação do SRP.
Para usar o DateTimePicker por horários, defina a propriedade Format como Hora ou Personalizada (Use Personalizado se desejar controlar o formato da hora usando a propriedade CustomFormat). Em seguida, defina a propriedade ShowUpDown como true.
Embora um usuário possa definir a data e a hora juntos manualmente, ele não pode usar a GUI para definir os dois.
O DateTime Picker pode ser usado para escolher a data e a hora, por isso é chamado de 'Date and Time Picker'. Você pode definir a propriedade " Formato " como " Personalizado " e definir a combinação de diferentes especificadores de formato para representar / escolher a data / hora em diferentes formatos na propriedade " Formato personalizado ". No entanto, se você quiser alterar a Data, o calendário pop-up poderá ser usado, enquanto que no caso da seleção da Hora (no mesmo controle, você deverá usar as teclas para cima / para baixo para alterar os valores.
Por exemplo, um formato personalizado " ddddd, MMMM dd, aaaa hh: mm: ss tt " fornecerá um resultado como este: " Quinta-feira, 20 de agosto de 2009 02:55:23 ".
Você pode brincar com diferentes combinações de especificadores de formato para atender às suas necessidades, por exemplo, o MMMM fornecerá " agosto ", enquanto o MM fornecerá " agosto "
yyyy-MM-dd HH:mm
) e depois retornar um valor que reflete apenas parte da data e hora exibidas . Eu diria que é um bug, mas tem sido há décadas ...
Vá para o Properties
seu dateTimePicker
no Visual Studio e defina Format
como Custom
. Em CustomFormat
digite seu formato. No meu caso eu useiMMMMdd, yyyy | hh:mm
Receio que o controle DateTimePicker não tenha a capacidade de fazer essas coisas. É um controle bastante básico (e frustrante!). Sua melhor opção pode ser encontrar um controle de terceiros que faça o que você deseja.
Para a opção de digitar a data e a hora manualmente, você pode criar um componente personalizado com uma combinação TextBox / DateTimePicker para fazer isso, e pode funcionar razoavelmente bem, se controles de terceiros não forem uma opção.