2010-07-21 6 views
2

J'essaie actuellement d'utiliser ce contrôle pour fournir un moyen de sélectionner une date et une heure à partir d'une boîte de dialogue. Cependant, je n'arrive pas à trouver comment permettre la sélection d'une date ET heure (le format semble autoriser court, long, personnalisé et le temps). S'il vous plaît quelqu'un pourrait me diriger vers la propriété pertinente pour cela?.NET DateTimePicker

Répondre

2

Si vous définissez un format personnalisé incluant l'heure, tout peut être modifié. Par exemple:

using System; 
using System.Windows.Forms; 

class Test 
{ 
    [STAThread] 
    static void Main() 
    { 
     Form form = new Form { 
      Controls = { 
       new DateTimePicker { 
        Format = DateTimePickerFormat.Custom, 
        CustomFormat = "dd/MM/yyyy HH:mm:ss" 
       } 
      } 
     }; 
     Application.Run(form); 
    } 
} 

Notez que la partie du temps doit être saisi à l'aide du clavier dans ce cas - en cliquant sur le menu déroulant affiche un calendrier permettant à la date fixée, mais je ne crois pas qu'il y ait un équivalent le temps.

EDIT: Notez que si vous utilisez ShowUpDown = true cela vous permet en effet de tout faire avec la souris - mais cela signifie que vous perdez la possibilité de choisir la date d'une manière visuelle simple. Je pense qu'en tant qu'utilisateur, je préférerais juste faire les bits de temps avec un clavier.

0

Je pense que pour résoudre votre problème, vous devez utiliser deux DateTimePicker. Un pour la date et un pour l'heure.

Un petit exemple de la msdn

dateTimePicker1.CustomFormat = "MMMM dd, yyyy - dddd"; 
dateTimePicker1.Format = DateTimePickerFormat.Custom; 

Ou vous utilisez un dtp et faire

this.dateTimePicker1.CustomFormat = "dd.MM.yyyy HH:mm:ss"; 
     this.dateTimePicker1.Format = System.Windows.Forms.DateTimePickerFormat.Custom; 

et la mise en place dtp

this.dateTimePicker1.ShowUpDown = true; 

si vous avez seulement un dtp.

1

Définissez le format du sélecteur sur Personnalisé, puis définissez la propriété CustomFormat en fonction de ce que vous souhaitez utiliser. Je ne suis pas sûr de savoir si vous pouvez choisir des temps par défaut, mais si vous définissez la propriété ShowUpDown sur True, vous devriez être en mesure de choisir à peu près n'importe quoi en utilisant les boîtes de spin. Cela va probablement désactiver le calendrier, cependant.

1

En supposant que vous utilisez Windows Forms, cela ne semble pas possible. Vous pouvez bien sûr définir la propriété CustomFormat pour inclure l'heure, mais vous ne pouvez pas sélectionner la date et l'heure via l'interface graphique.

Questions connexes