Anzeigen von Daten: Verwenden der Steuerelemente MonthCalendar und DateTimePicker
Aktualisiert: November 2007
In dieser Lektion erfahren Sie, wie das Datum auf einem Windows-Formular angezeigt wird. Sie lernen außerdem, wie eine Aktion ausgeführt wird, wenn ein Benutzer ein Datum auswählt.
Wenn Sie ein Steuerelement verwenden, das einen Kalender anzeigt, können die Benutzer ohne weiteres ein Datum auswählen. Die Verwendung dieser Steuerelemente sorgt auch dafür, dass das Datum ordnungsgemäß formatiert wird. Sie können einen Kalender mit einem MonthCalendar-Steuerelement oder einem DateTimePicker-Steuerelement anzeigen.
Das MonthCalendar-Steuerelement ermöglicht die Anzeige eines Kalenders für einen oder mehrere Monate. Wenn Sie dieses Steuerelement verwenden, können Benutzer ein einzelnes Datum oder einen Datumsbereich auswählen.
Das DateTimePicker-Steuerelement verfügt über zwei Zustände. Standardmäßig wird das DateTimePicker-Steuerelement zusammen mit einem Dropdownpfeil als Textfeld dargestellt. Wenn der Benutzer auf den Dropdownpfeil klickt, wird ein Kalender angezeigt. Wenn Sie dieses Steuerelement verwenden, kann der Benutzer nur ein einzelnes Datum auswählen. Mit dem DateTimePicker-Steuerelement ist es auch möglich, Zeiten statt Datumsangaben anzuzeigen.
Der Prozess zum Abrufen eines Datums aus diesen Steuerelementen ändert sich je nach dem verwendeten Steuerelement. Verwenden Sie die Start-Eigenschaft für ein MonthCalendar-Steuerelement und die Value-Eigenschaft für ein DateTimePicker-Steuerelement.
Übung
So rufen Sie ein Datum ab und zeigen es in einer Bezeichnung an
Klicken Sie im Menü Datei auf Neues Projekt.
Das Dialogfeld Neues Projekt wird angezeigt.
Klicken Sie auf Windows Forms-Anwendung und dann auf OK.
Fügen Sie dem Formular ein Label-Steuerelement hinzu, und behalten Sie den Standardnamen Label1 bei.
Entfernen Sie den Text aus der Text-Eigenschaft des Label-Steuerelements.
Fügen Sie dem Formular ein MonthCalendar-Steuerelement hinzu, und behalten Sie den Standardnamen MonthCalendar1 bei.
Doppelklicken Sie auf das MonthCalendar-Steuerelement, um den Standardereignishandler in den Code-Editor einzugeben.
Fügen Sie im MonthCalendar1_DateChanged-Ereignishandler den folgenden Code hinzu, um der Liste Elemente hinzuzufügen.
Me.Label1.Text = CStr(Me.MonthCalendar1.SelectionRange.Start)
Kehren Sie zur Entwurfsansicht zurück, fügen Sie dem Formular ein DateTimePicker-Steuerelement hinzu, und behalten Sie den Standardnamen DateTimePicker1 bei.
Doppelklicken Sie auf das DateTimePicker-Steuerelement, um den Standardereignishandler in den Code-Editor einzugeben.
Fügen Sie im DateTimePicker_ValueChanged-Ereignishandler den folgenden Code hinzu, um der Liste Elemente hinzuzufügen.
Me.Label1.Text = CStr(Me.DateTimePicker1.Value)
Drücken Sie F5, um das Programm auszuführen.
Wenn das Formular angezeigt wird, klicken Sie auf ein Datum im MonthCalendar-Steuerelement, und überprüfen Sie, ob das Datum in der Bezeichnung angezeigt wird.
Klicken Sie auf den Dropdownpfeil des DateTimePicker-Steuerelements, und wählen Sie ein Datum aus.
Das Datum und die Zeit werden in der Bezeichnung angezeigt.
Beenden Sie das Programm.
Abrufen mehrerer Datumsangaben
Sie können einen Bereich von Datumsangaben abrufen, die in einem MonthCalendar-Steuerelement ausgewählt sind. Verwenden Sie dazu die Eigenschaften Start und End von SelectionRange. Standardmäßig können maximal sieben Tage ausgewählt werden, Sie können dies jedoch ändern, indem Sie die MaxSelectionCount-Eigenschaft festlegen. Ob ein Bereich ausgewählt ist, lässt sich feststellen, indem Sie überprüfen, ob das Start- und das Enddatum gleich sind.
So rufen Sie einen Datumsbereich aus einem MonthCalendar-Steuerelement ab
Ändern Sie den Code im MonthCalendar1_DateChanged-Ereignishandler in den folgenden Code. Dieser Code legt die maximale Anzahl von Tagen (zwei Wochen) fest, die im Steuerelement ausgewählt werden können. Das Startdatum wird in der Bezeichnung angezeigt, wenn nur ein Tag ausgewählt wird, ein Datumsbereich wird jedoch angezeigt, wenn im MonthCalendar-Steuerelement ein Bereich ausgewählt wird.
Me.MonthCalendar1.MaxSelectionCount = 14 If Me.MonthCalendar1.SelectionRange.Start = _ Me.MonthCalendar1.SelectionRange.End Then Me.Label1.Text = CStr(Me.MonthCalendar1.SelectionStart) Else Me.Label1.Text = Me.MonthCalendar1.SelectionRange.Start & _ " - " & Me.MonthCalendar1.SelectionRange.End End If
Drücken Sie F5, um das Programm auszuführen.
Wenn das Formular angezeigt wird, wählen Sie im MonthCalendar-Steuerelement einen Datumsbereich aus, und überprüfen Sie, ob dieser Bereich in der Bezeichnung angezeigt wird.
Beenden Sie das Programm.
Formatieren von Datumsangaben
Sie können die von den Steuerelementen MonthCalendar und DateTimePicker zurückgegebenen Datumsangaben mit der FormatDateTime-Funktion formatieren. Mit verschiedenen Konstanten können Sie das Format des Datums angeben:
Konstante |
Beschreibung |
Beispiel (auf Grundlage der Standardländereinstellungen für Deutsch (Deutschland)) |
---|---|---|
DateFormat.GeneralDate |
Zeigt ein Datum, eine Zeit oder beides an. Bei einer Datumsangabe wird ein kurzes Datum angezeigt. Ist eine Zeitangabe vorhanden, erfolgt die Anzeige im langen Zeitformat. Wenn vorhanden, werden beide Teile angezeigt. |
22.11.1963 00:00:00 |
DateFormat.LongDate |
Zeigt ein Datum im langen Datumsformat an, das in den Ländereinstellungen des Computers festgelegt wurde. |
Freitag, 22. November 1963 |
DateFormat.ShortDate |
Zeigt ein Datum im kurzen Datumsformat an, das in den Ländereinstellungen des Computers festgelegt wurde. |
11/22/1963 |
DateFormat.LongTime |
Zeigt die Zeit im langen Zeitformat an, das in den Ländereinstellungen des Computers festgelegt wurde. |
00:00:00 |
DateFormat.ShortTime |
Zeigt eine Uhrzeit im 24-Stundenformat (hh:mm) an. |
12:00 |
So formatieren Sie das Datum in der Bezeichnung
Ändern Sie den Code im MonthCalendar1_DateChanged-Ereignishandler in den folgenden Code. Mit diesem Code wird das als langes Datum zurückgegebene Datum formatiert.
Me.MonthCalendar1.MaxSelectionCount = 14 If Me.MonthCalendar1.SelectionRange.Start = _ Me.MonthCalendar1.SelectionRange.End Then Me.Label1.Text = FormatDateTime( _ Me.MonthCalendar1.SelectionStart, _ DateFormat.LongDate) Else Me.Label1.Text = FormatDateTime( _ Me.MonthCalendar1.SelectionRange.Start, _ DateFormat.LongDate) & " - " & FormatDateTime( _ Me.MonthCalendar1.SelectionRange.End, DateFormat.LongDate) End If
Ändern Sie den Code im DatePicker1_ValueChanged-Ereignishandler in den folgenden Code. Mit diesem Code wird das als langes Datum zurückgegebene Datum formatiert.
Me.Label1.Text = FormatDateTime(Me.DateTimePicker1.Value, _ DateFormat.LongDate)
Drücken Sie F5, um das Programm auszuführen.
Wenn das Formular angezeigt wird, klicken Sie im MonthCalendar-Steuerelement auf ein Datum oder einen Datumsbereich. Überprüfen Sie, ob das Datum oder der Datumsbereich in der Bezeichnung im langen Datumsformat angezeigt wird.
Klicken Sie auf ein Datum im DateTimePicker-Steuerelement, und überprüfen Sie, ob das Datum in der Bezeichnung als langes Datum angezeigt wird.
Beenden Sie das Programm.
Nächste Schritte
In dieser Lektion haben Sie gelernt, wie Datumsangaben abgerufen werden , die in den Steuerelementen MonthCalendar und DateTimePicker ausgewählt sind, und wie sie auf einem Windows-Formular angezeigt werden. Außerdem haben Sie gelernt, wie ein Datumsbereich angezeigt wird und die abgerufenen Datumsangaben formatiert werden. In der nächsten Lektion erfahren Sie, wie Datensteuerelemente verwendet werden.
Nächste Lektion: Datensteuerelemente: Anzeigen von Daten in DataGridView-Steuerelementen
Siehe auch
Referenz
Übersicht über das DateTimePicker-Steuerelement (Windows Forms)
Übersicht über das MonthCalendar-Steuerelement (Windows Forms)
FormatDateTime-Funktion (Visual Basic)
Weitere Ressourcen
Erstellen der visuellen Darstellung eines Programms: Einführung in Windows Forms